Chris Hawblitzel, Ming Kawaguchi, Shuvendu K. Lahiri, and Henrique Rebelo
June 2013
In this paper, we present a general framework for modularly comparing two (imperative) programs that can leverage single-program verifiers based on automated theorem provers. We formalize (i) {\it mutual summaries} for comparing the summaries of two programs, and (ii) {\it relative termination} to describe conditions under which two programs relatively terminate. The two rules together allow for checking correctness of interprocedural transformations. We also provide a general framework for dealing with unstructured control flow (including loops) in this framework. We demonstrate the usefulness and limitations of the framework for verifying equivalence, compiler optimizations, and interprocedural transformations.
![]() PDF file | ![]() PDF file |
In International Conference on Automated Deduction (CADE '13)
Publisher Springer
| Type | Inproceedings |
Chris Hawblitzel, Ming Kawaguchi, Shuvendu Lahiri, and Henrique Rebelo. Towards Modularly Comparing Programs using Automated Theorem Provers, October 2011.