Result certification for relational program analysis - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 2007

Result certification for relational program analysis

Thomas Jensen
  • Function : Author
  • PersonId : 831246
David Pichardie
Tiphaine Turpin
  • Function : Author
  • PersonId : 841971


We define a generic relational program analysis for an imperative, stack-oriented byte code language with procedures, arrays and global variables and instantiate it with an abstract domain of polyhedra. The analysis has automatic inference of loop invariants and method pre-/post-conditions, and efficient checking of analysis results by a simple checker. Invariants, which can be large, can be specialized for proving a safety policy using an automatic pruning technique which reduces their size. The result of the analysis can be checked efficiently by annotating the program with parts of the invariant together with certificates of polyhedral inclusions, which allow to avoid certain complex polyhedral computation such as the convex hull of two polyhedra. Small, easily checkable inclusion certificates are obtained using Farkas lemma for proving the absence of solutions to systems of linear inequalities. The resulting checker is sufficiently simple to be entirely certified within the Coq proof assistant.
Fichier principal
Vignette du fichier
RR-6333.pdf (358.05 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

inria-00166930 , version 1 (13-08-2007)
inria-00166930 , version 2 (24-10-2007)
inria-00166930 , version 3 (24-10-2007)
inria-00166930 , version 4 (25-10-2007)


  • HAL Id : inria-00166930 , version 4


Frédéric Besson, Thomas Jensen, David Pichardie, Tiphaine Turpin. Result certification for relational program analysis. [Research Report] RR-6333, INRIA. 2007, pp.32. ⟨inria-00166930v4⟩
406 View
129 Download


Gmail Facebook Twitter LinkedIn More