Skip to Main content Skip to Navigation

Programmation fonctionnelle certifiée :
L'extraction de programmes dans l'assistant Coq

Abstract : This work concerns the generation of programs which are certified
to be correct by construction. These programs are obtained by
extracting relevant information from constructive proofs made with
the Coq proof assistant.

Such a translation, named ``extraction'', of constructive proofs into
functional programs is not new, and corresponds to an isomorphism
known as Curry-Howard's. An extraction tool has been part of Coq
assistant for a long time. But this old extraction tool suffered from
several limitations: in particular, some Coq proofs were refused by
it, whereas some others led to incorrect programs.

In order to overcome these limitations, we built a completely new
extraction tool for Coq, including both a new theory and a new
implementation. Concerning theory, we developed new correctness
proofs for this extraction mechanism. These new proofs are both
complex and original. Concerning implementation, we focused on
the generation of efficient and realistic code, which can be integrated
in large-scale software developments, using modules and interfaces.

Finally, we also present several case studies illustrating the
capabilities of our new extraction. For example, we describe the
certification of a modular library of finite set structures, and the
production of programs about real exact arithmetic, starting from a
formalization of constructive real analysis. These examples show
the progress already achieved, even if the situation is not perfect yet,
in particular in the last study.
Document type :
Complete list of metadata

Cited literature [77 references]  Display  Hide  Download
Contributor : Pierre Letouzey Connect in order to contact the contributor
Submitted on : Friday, June 1, 2007 - 12:47:38 AM
Last modification on : Thursday, July 8, 2021 - 3:48:20 AM
Long-term archiving on: : Thursday, April 8, 2010 - 6:37:17 PM


  • HAL Id : tel-00150912, version 1



Pierre Letouzey. Programmation fonctionnelle certifiée :
L'extraction de programmes dans l'assistant Coq. Autre [cs.OH]. Université Paris Sud - Paris XI, 2004. Français. ⟨tel-00150912⟩



Les métriques sont temporairement indisponibles