Amir Pnueli, Michael Siegel and Eli Singerman, "Translation Validation", proceedings of TACAS'98, LNCS 1384, pp 151--166, 1998.

Abstract

We present the notion of translation validation as a new approach to the verification of translators (compilers, code generators). Rather than proving in advance that the compiler always produces a target code which correctly implements the source code (compiler verification), each individual translation (i.e. a run of the compiler) is followed by a validation phase which verifies that the target code produced on this run correctly implements the submitted source program. Several ingredients are necessary to set up the -- fully automatic -- translation validation process, among which are: These, and other ingredients are elaborated in this paper, in which we illustrate the new approach in a most challenging case. We consider a translation (compilation) from the synchronous multi-clock data-flow language Signal to asynchronous (sequential) C-code.

Postscript (456K).