The design and implementation of a certifying compiler
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Compiling with proofs
The open verifier framework for foundational verifiers
TLDI '05 Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation
Towards Proof Generating Compilers
Electronic Notes in Theoretical Computer Science (ENTCS)
Electronic Notes in Theoretical Computer Science (ENTCS)
Certificate translation for optimizing compilers
SAS'06 Proceedings of the 13th international conference on Static Analysis
Proof obligations preserving compilation
FAST'05 Proceedings of the Third international conference on Formal Aspects in Security and Trust
Certificate translation for specification-preserving advices
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
Preservation of Proof Obligations from Java to the Java Virtual Machine
IJCAR '08 Proceedings of the 4th international joint conference on Automated Reasoning
The MOBIUS Proof Carrying Code Infrastructure
Formal Methods for Components and Objects
Certificate translation for optimizing compilers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Automated translation of Java source code to Eiffel
TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
Hi-index | 0.00 |
The execution of untrusted bytecode programs can produce undesired behavior. A proof on the bytecode programs can be generated to ensure safe execution. Automatic techniques to generate proofs, such as certifying compilation, can only be used for a restricted set of properties such as type safety. Interactive verification of bytecode is difficult due to its unstructured control flow. Our approach is verify programs on the source level and then translate the proof to the byte-code level. This translation is non-trivial for programs with abrupt termination. We present proof transforming compilation from Java to Java Bytecode. This paper formalizes the proof transformation and present a soundness result.