In Search of Software Perfection
Abstract
How to prove the correctness of a program with mathematical certainty? The principles of program proof have been known for a very long time, but it is only recently that program provers and proof assistants became able to verify nontrivial programs. This invited talk discussed the usability of these tools, based on examples in Frama-C WP and in Coq, and speculated on what is next on the road to software perfection.