Skip to Main content Skip to Navigation

Certifying cost annotations in compilers

Roberto M. Amadio 1 Nicolas Ayache 1, 2 Yann Régis-Gianas 1, 2 Ronan Saillard 2, 1
2 PI.R2 - Design, study and implementation of languages for proofs and programs
PPS - Preuves, Programmes et Systèmes, Inria Paris-Rocquencourt, UPD7 - Université Paris Diderot - Paris 7, CNRS - Centre National de la Recherche Scientifique : UMR7126
Abstract : We discuss the problem of building a compiler which can lift in a provably correct way pieces of information on the execution cost of the object code to cost annotations on the source code. To this end, we need a clear and flexible picture of: (i) the meaning of cost annotations, (ii) the method to prove them sound and precise, and (iii) the way such proofs can be composed. We propose a so-called labelling approach to these three questions. As a first step, we examine its application to a toy compiler. This formal study suggests that the labelling approach has good compositionality and scalability properties. In order to provide further evidence for this claim, we report our successful experience in implementing and testing the labelling approach on top of a prototype compiler written in OCAML for (a large fragment of) the C language.
Document type :
Complete list of metadata

Cited literature [10 references]  Display  Hide  Download
Contributor : Roberto M. Amadio <>
Submitted on : Friday, October 8, 2010 - 4:01:31 PM
Last modification on : Saturday, August 29, 2020 - 5:26:03 PM
Long-term archiving on: : Monday, January 10, 2011 - 11:46:59 AM


Files produced by the author(s)


  • HAL Id : hal-00524715, version 1
  • ARXIV : 1010.1697



Roberto M. Amadio, Nicolas Ayache, Yann Régis-Gianas, Ronan Saillard. Certifying cost annotations in compilers. 2010. ⟨hal-00524715⟩