Journal of Automated Reasoning

, Volume 41, Issue 1, pp 1–31

Formal Verification of a C-like Memory Model and Its Uses for Verifying Program Transformations

Authors

    • INRIA Paris-Rocquencourt
  • Sandrine Blazy
    • ENSIIE
Article

DOI: 10.1007/s10817-008-9099-0

Cite this article as:
Leroy, X. & Blazy, S. J Autom Reasoning (2008) 41: 1. doi:10.1007/s10817-008-9099-0

Abstract

This article presents the formal verification, using the Coq proof assistant, of a memory model for low-level imperative languages such as C and compiler intermediate languages. Beyond giving semantics to pointer-based programs, this model supports reasoning over transformations of such programs. We show how the properties of the memory model are used to prove semantic preservation for three passes of the Compcert verified compiler.

Keywords

Memory modelCProgram verificationCompilationCompiler correctnessThe Coq proof assistant

Copyright information

© Springer Science+Business Media B.V. 2008