|
|
|
|
|
by 110011
3120 days ago
|
|
Nice interview. What a tremendous achievement to formally prove the correctness of a C compiler! It boggles my mind why more people are not involved in this direction. I hope to live to see the day when lots of commercial software will be written with formal proofs and zero tests. It may just be that we don't have the right tools at this point. If theorem provers could figure out details for themselves for the most part and the programmer has to only specify a few key invariants and rough sketches of the hypotheses and the end guarantees then I cannot begin to imagine how much more productive programming can become. |
|
Because only a vanishingly rare amount of the incorrectness in compiled C programs comes from a bug in the compiler.
Also, some code coaxes a desired behavior out of the object code while bending the rules of the language.
The compiler being proven over correct code (i.e. free of any undefined behaviors) is useless in that situation, unless the prover actually works with an extended language definition (specific to that compiler) which defines those behaviors.