Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where David Delahaye is active.

Publication


Featured researches published by David Delahaye.


international conference on logic programming | 2000

A tactic language for the system Coq

David Delahaye

We propose a new tactic language for the system Coq, which is intended to enrich the current tactic combinators (tacticals). This language is based on a functional core with recursors and matching operators for Coq terms but also for proof contexts. It can be used directly in proof scripts or in toplevel definitions (tactic definitions). We show that the implementation of this language involves considerable changes in the interpretation of proof scripts, essentially due to the matching operators. We give some examples which solve small proof parts locally and some others which deal with non-trivial problems. Finally, we discuss the status of this meta-language with respect to the Coq language and the implementation language of Coq.


international conference on logic programming | 2007

Zenon: an extensible automated theorem prover producing checkable proofs

Richard Bonichon; David Delahaye; Damien Doligez

We present Zenon, an automated theorem prover for first order classical logic (with equality), based on the tableau method. Zenon is intended to be the dedicated prover of the Focal environment, an objectoriented algebraic specification and proof system, which is able to produce OCaml code for execution and Coq code for certification. Zenon can directly generate Coq proofs (proof scripts or proof terms), which can be reinserted in the Coq specifications produced by Focal. Zenon can also be extended, which makes specific (and possibly local) automation possible in Focal.


Electronic Notes in Theoretical Computer Science | 2002

A Proof Dedicated Meta-Language ?

David Delahaye

We describe a proof dedicated meta-language, called Ltac, in the context of the Coq proof assistant. This new layer of meta-language is quite appropriate to write small and local automations. Ltac is essentially a small functional core with recursors and powerful pattern-matching operators for Coq terms but also for proof contexts. As Ltac is not complete, we describe an interface between Ltac and the full programmable meta-language of the system (Objective Caml), which is also the implementation language. This interface is based on a quotation system where we can use Ltac’s syntax in ML files, and where it is possible to insert ML code in Ltac scripts by means of antiquotations. In that way, the two meta-languages are not opposed and we give an example where they fairly cooperate. Thus, this shows that a LCF-like system with a two-level meta-language is completely realistic.


international conference on logic programming | 2013

Zenon Modulo: When Achilles Outruns the Tortoise Using Deduction Modulo

David Delahaye; Damien Doligez; Frédéric Gilbert; Pierre Halmagrand; Olivier Hermant

We propose an extension of the tableau-based first order automated theorem prover Zenon to deduction modulo. The theory of deduction modulo is an extension of predicate calculus, which allows us to rewrite terms as well as propositions, and which is well suited for proof search in axiomatic theories, as it turns axioms into rewrite rules. We also present a heuristic to perform this latter step automatically, and assess our approach by providing some experimental results obtained on the benchmarks provided by the TPTP library, where this heuristic is able to prove difficult problems in set theory in particular. Finally, we describe an additional backend for Zenon that outputs proof certificates for Dedukti, which is a proof checker based on the λΠ-calculus modulo.


Journal of Symbolic Computation | 2005

Dealing with algebraic expressions over a field in Coq using Maple

David Delahaye; Micaela Mayero

We describe an interface between the Coq proof assistant and the Maple symbolic computation system, which mainly consists in importing, in Coq, Maple computations regarding algebraic expressions over fields. These can either be pure computations, which do not require any validation, or computations used during proofs, which must be proved (to be correct) within Coq. These correctness proofs are completed automatically thanks to the tactic Field, which deals with equalities over fields. This tactic, which may generate side conditions (regarding the denominators) that must be proved by the user, has been implemented in a reflexive way, which ensures both efficiency and certification. The implementation of this interface is quite light and can be very easily extended to get other Maple functions (in addition to the four functions we have imported and used in the examples given here).


ABZ 2014 Proceedings of the 4th International Conference on Abstract State Machines, Alloy, B, TLA, VDM, and Z - Volume 8477 | 2014

The BWare Project: Building a Proof Platform for the Automated Verification of B Proof Obligations

David Delahaye; Catherine Dubois; Claude Marché; David Mentre

We introduce BWare, an industrial research project that aims to provide a mechanized framework to support the automated verification of proof obligations coming from the development of industrial applications using the B method and requiring high integrity. The adopted methodology consists in building a generic verification platform relying on different automated theorem provers, such as first order provers and SMT Satisfiability Modulo Theories solvers. Beyond the multi-tool aspect of our methodology, the originality of this project also resides in the requirement for the verification tools to produce proof objects, which are to be checked independently. In this paper, we present some preliminary results of BWare, as well as some current major lines of work.


certified programs and proofs | 2012

Producing certified functional code from inductive specifications

Pierre-Nicolas Tollitte; David Delahaye; Catherine Dubois

Proof assistants based on type theory allow the user to adopt either a functional style, or a relational style (e.g., by using inductive types). Both styles have pros and cons. Relational style may be preferred because it allows the user to describe only what is true, discard momentarily the termination question, and stick to a rule-based description. However, a relational specification is usually not executable. This paper proposes to turn an inductive specification into a functional one, in the logical setting itself, more precisely Coq in this work. We define for a certain class of inductive specifications a way to extract functions from them and automatically produce the proof of soundness of the extracted function w.r.t. its inductive specification. In addition, using user-defined modes which label inputs and outputs, we are able to extract several computational contents from a single inductive type.


leveraging applications of formal methods | 2006

Reasoning about Airport Security Regulations Using the Focal Environment

David Delahaye; Jean-Frédéric Étienne; Véronique Viguié Donzeau-Gouge

We present the validation of regulations intended to ensure airport security in the framework of civil aviation. In particular, we describe the proofs of correctness/completeness for two standards, one at the international level and the other at the European level, and we show how the properties of the European level refines those of the international level. These models are expressed using the Focal environment, an object- oriented specification and proof system, and the proofs described by means of a declarative-like language are processed by the automated theorem prover Zenon. We show how Zenon appears quite appropriate when dealing with abstract specifications like our case study, but also how it should be controlled to present readable proofs.


Electronic Notes in Theoretical Computer Science | 2006

Quantifier Elimination over Algebraically Closed Fields in a Proof Assistant using a Computer Algebra System

David Delahaye; Micaela Mayero

We propose a decision procedure for algebraically closed fields based on a quantifier elimination method. The procedure is intended to build proofs for systems of polynomial equations and inequations. We describe how this procedure can be carried out in a proof assistant using a Computer Algebra system in a purely skeptical way. We present an implementation in the particular framework of Coq and Maple giving some details regarding the interface between the two tools. This allows us to show that a Computer Algebra system can be used not only to bring additional computational power to a proof assistant but also to enhance the automation of such tools.


theorem proving in higher order logics | 2007

Extracting purely functional contents from logical inductive types

David Delahaye; Catherine Dubois; Jean-Frédéric Étienne

We propose a method to extract purely functional contents from logical inductive types in the context of the Calculus of Inductive Constructions. This method is based on a mode consistency analysis, which verifies if a computation is possible w.r.t. the selected inputs/outputs, and the code generation itself. We prove that this extraction is sound w.r.t. the Calculus of Inductive Constructions. Finally, we present some optimizations, as well as the implementation designed in the Coq proof assistant framework.

Collaboration


Dive into the David Delahaye's collaboration.

Top Co-Authors

Avatar

Jean-Frédéric Étienne

Conservatoire national des arts et métiers

View shared research outputs
Top Co-Authors

Avatar

Véronique Viguié Donzeau-Gouge

Conservatoire national des arts et métiers

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Renaud Rioboo

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar

Jacques Calmet

Karlsruhe Institute of Technology

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge