arXiv · 1611.09606
An Inductive Proof Method for Simulation-based Compiler Correctness
Abstract
We study induction on the program structure as a proof method for bisimulation-based compiler correctness. We consider a first-order language with mutually recursive function definitions, system calls, and an environment semantics. The proof method relies on a generalization of compatibility of function definition with the bisimulation. We use the inductive method to show correctness of a form of dead code elimination. This is an interesting case study because the transformation removes function, variable, and parameter definitions from the program. While such transformations require modification of the simulation in a coinductive proof, the inductive method deals with them naturally. All our results are formalized in Coq.
Explore related subjects
Keep this discovery
Sigurd Schneider, Gert Smolka, Sebastian Hack. 2016-11-29. An Inductive Proof Method for Simulation-based Compiler Correctness. https://arxiv.org/abs/1611.09606
Cite the original work for its findings. Save a collection to share your selection of sources.