Skip to Main content Skip to Navigation
Journal articles

Extracting a data flow analyser in constructive logic

David Cachera 1 Thomas Jensen 1 David Pichardie 1 Vlad Rusu 2
1 Lande - Logiciel : ANalyse et DEveloppement
IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, Inria Rennes – Bretagne Atlantique
2 DART - Contributions of the Data parallelism to real time
LIFL - Laboratoire d'Informatique Fondamentale de Lille, Inria Lille - Nord Europe
Abstract : A constraint-based data flow analysis is formalised in the specification language of the Coq proof assistant. This involves defining a dependent type of lattices together with a library of lattice functors for modular construction of complex abstract domains. Constraints are represented in a way that allows for both efficient constraint resolution and correctness proof of the analysis with respect to an operational semantics. The proof of existence of a solution to the constraints is constructive which means that the extraction mechanism of Coq provides a provably correct data flow analyser in Ocaml from the proof. The library of lattices and the representation of constraints are defined in an analysis-independent fashion that provides a basis for a generic framework for proving and extracting static analysers in Coq.
Document type :
Journal articles
Complete list of metadata

Cited literature [22 references]  Display  Hide  Download
Contributor : Mister Dart Connect in order to contact the contributor
Submitted on : Wednesday, February 9, 2011 - 2:28:17 PM
Last modification on : Wednesday, July 7, 2021 - 2:34:00 PM
Long-term archiving on: : Tuesday, May 10, 2011 - 3:18:41 AM


Files produced by the author(s)



David Cachera, Thomas Jensen, David Pichardie, Vlad Rusu. Extracting a data flow analyser in constructive logic. Theoretical Computer Science, Elsevier, 2005, 342 (1), pp.56-78. ⟨10.1016/j.tcs.2005.06.004⟩. ⟨inria-00564611⟩



Les métriques sont temporairement indisponibles