A general framework for certifying garbage collectors and their mutators
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Garbage collector verification for proof-carrying code
Journal of Computer Science and Technology
Higher-Order Separation Logic in Isabelle/HOLCF
Electronic Notes in Theoretical Computer Science (ENTCS)
Erasure and polymorphism in pure type systems
FOSSACS'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Foundations of software science and computational structures
Safe to the last instruction: automated verification of a type-safe operating system
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Hi-index | 0.01 |
Type-directed certifying compilation and typed assembly language (TAL) aim to minimize the trusted computing base of safe languages by directly type-checking low-level ma- chine code. However, the safety of TAL still heavily relies on its safe interaction with the underlying garbage collector. Based on a recent variant of foundational proof-carrying code (FPCC), we introduce a general methodology for com- bining foundational TAL with a certified garbage collector. We demonstrate the practicality of this approach by link- ing a typical TAL with a conservative garbage collector. This includes proving the safety of the collector, the sound- ness of TAL, and the safe interaction between TAL programs and the garbage collector. Our work is fully mechanized in the Coq proof assistant and the certified programs can be shipped immediately as FPCC packages.