TY - GEN
T1 - Mostly sound type system improves a foundational program verifier
AU - Dodds, Josiah
AU - Appel, Andrew W.
PY - 2013
Y1 - 2013
N2 - We integrate a verified typechecker with a verified program logic for the C language, proved sound with respect to the operational semantics of the CompCert verified optimizing C compiler. The C language is known to not be type-safe but we show the value of a provably mostly sound type system: integrating the typechecker with the program logic makes the logic significantly more usable. The computational nature of our typechecker (within Coq) makes program proof much more efficient. We structure the system so that symbolic execution - even tactical (nonreflective) symbolic execution - can keep the type context and typechecking always in reified form, to avoid expensive re-reification.
AB - We integrate a verified typechecker with a verified program logic for the C language, proved sound with respect to the operational semantics of the CompCert verified optimizing C compiler. The C language is known to not be type-safe but we show the value of a provably mostly sound type system: integrating the typechecker with the program logic makes the logic significantly more usable. The computational nature of our typechecker (within Coq) makes program proof much more efficient. We structure the system so that symbolic execution - even tactical (nonreflective) symbolic execution - can keep the type context and typechecking always in reified form, to avoid expensive re-reification.
UR - http://www.scopus.com/inward/record.url?scp=84893057010&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84893057010&partnerID=8YFLogxK
U2 - 10.1007/978-3-319-03545-1_2
DO - 10.1007/978-3-319-03545-1_2
M3 - Conference contribution
AN - SCOPUS:84893057010
SN - 9783319035444
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 17
EP - 32
BT - Certified Programs and Proofs - Third International Conference, CPP 2013, Proceedings
T2 - 3rd International Conference on Certified Programs and Proofs, CPP 2013
Y2 - 11 December 2013 through 13 December 2013
ER -