Démonstration automatique en théorie des types

Les logiciels d'aide a la demonstration se repartissent entre prouveurs automatiques et assistants de preuve interactifs. Les premiers sont des outils specialises dont les techniques sont eloignees des methodes intuitives de raisonnement mais dont la portee est faible. Les seconds ont un champ d'application plus large mais l'utilisateur doit expliciter tous les details de la demonstration. L'automatisation des preuves y est difficile car la logique utilisee est plus expressive. La these se compose de trois contributions dans ce domaine. D'abord, nous presentons une extension de la cloture de congruence a une theorie des constructeurs avec application partielle. Un algorithme pour resoudre ce probleme est decrit et etudie. Ensuite nous construisons un formalisme du premier ordre incluant des connecteurs definis comme des types inductifs non recursifs dans l'esprit du Calcul des Constructions Inductives. Nous presentons un nouveau calcul de sequents sans contraction pour la logique intuitionniste du premier ordre, adapte a ce formalisme, et prouvons ses proprietes fondamentales: elimination des contractions et des coupures. Nous en derivons une procedure de semi-decision. Ces deux premieres contributions sont implantees dans l'assistant de preuve Coq; la troisieme est la description d'une methode d'interpretation des preuves au premier ordre dans la Theorie des Types grâce a la reflexion calculatoire. Ce paradigme est applique a la logique propositionnelle et utilise par une procedure de decision du systeme Coq. Cette methode est aussi etendue au premier ordre avec egalite et permet de verifier des preuves engendrees par completion ordonnee dans le systeme CiME.

[1]  David Delahaye,et al.  A Tactic Language for the System Coq , 2000, LPAR.

[2]  Christoph Kreitz,et al.  Connection-based Theorem Proving in Classical and Non-classical Logics , 1999, J. Univers. Comput. Sci..

[3]  Roy Dyckhoff,et al.  Admissibility of Structural Rules for Contraction-Free Systems of Intuitionistic Logic , 2000, J. Symb. Log..

[4]  Richard W. Weyhrauch,et al.  A Decidable Fragment of Predicate Calculus , 1984, Theor. Comput. Sci..

[5]  Gérard P. Huet,et al.  The Zipper , 1997, Journal of Functional Programming.

[6]  Thomas Ottmann Proceedings of the 14th International Colloquium, on Automata, Languages and Programming , 1987 .

[7]  Richard Statman,et al.  Intuitionistic Propositional Logic is Polynomial-Space Complete , 1979, Theor. Comput. Sci..

[8]  Sylvain Conchon,et al.  Strategies for combining decision procedures , 2003, Theor. Comput. Sci..

[9]  Gianluigi Bellin,et al.  A Decision Procedure Revisited: Notes on Direct Logic, Linear Logic and its Implementation , 1992, Theor. Comput. Sci..

[10]  Geoff Sutcliffe,et al.  The TPTP Problem Library , 1994, Journal of Automated Reasoning.

[11]  A. Heyting,et al.  Intuitionism: An introduction , 1956 .

[12]  Ashish Tiwari,et al.  Abstract Congruence Closure , 2003, Journal of Automated Reasoning.

[13]  J. Heijenoort From Frege To Gödel , 1967 .

[14]  Benjamin Grégoire,et al.  A compiled implementation of strong reduction , 2002, ICFP '02.

[15]  Henk Barendregt,et al.  The Lambda Calculus: Its Syntax and Semantics , 1985 .

[16]  Robert A. Kowalski,et al.  The Semantics of Predicate Logic as a Programming Language , 1976, JACM.

[17]  Emil L. Post Recursive Unsolvability of a problem of Thue , 1947, Journal of Symbolic Logic.

[18]  Gerald E. Peterson,et al.  A Technique for Establishing Completeness Results in Theorem Proving with Equality , 1980, SIAM J. Comput..

[19]  Ashish Tiwari,et al.  Abstract Congruence Closure and Specializations , 2000, CADE.

[20]  de Ng Dick Bruijn,et al.  A survey of the project Automath , 1980 .

[21]  F. Pfenning Logic programming in the LF logical framework , 1991 .

[22]  Greg Nelson,et al.  Simplification by Cooperating Decision Procedures , 1979, TOPL.

[23]  Vincent van Oostrom Rewriting Techniques and Applications , 2004, Lecture Notes in Computer Science.

[24]  Kurt Gödel,et al.  On undecidable propositions of formal mathematical systems , 1934 .

[25]  J. Harrison Metatheory and Reflection in Theorem Proving: A Survey and Critique , 1995 .

[26]  A. G. Dragálin Mathematical Intuitionism. Introduction to Proof Theory , 1988 .

[27]  Donald R. Morrison,et al.  PATRICIA—Practical Algorithm To Retrieve Information Coded in Alphanumeric , 1968, J. ACM.

[28]  Jörg Hudelmaier,et al.  An O(n log n)-Space Decision Procedure for Intuitionistic Propositional Logic , 1993, J. Log. Comput..

[29]  Greg Nelson,et al.  Fast Decision Procedures Based on Congruence Closure , 1980, JACM.

[30]  Robert E. Tarjan,et al.  Variations on the Common Subexpression Problem , 1980, J. ACM.

[31]  Cuihtlauac Alvarado Réflexion pour la réécriture dans le calcul des constructions inductives , 2002 .

[32]  G. Frege Grundgesetze der Arithmetik , 1893 .

[33]  Christoph Kreitz,et al.  JProver : Integrating Connection-Based Theorem Proving into Interactive Proof Assistants , 2001, IJCAR.

[34]  William A. Howard,et al.  The formulae-as-types notion of construction , 1969 .

[35]  Thomas Hillenbrand,et al.  The next WALDMEISTER loop , 2002 .

[36]  S. C. Kleene,et al.  Introduction to Metamathematics , 1952 .

[37]  de Ng Dick Bruijn Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem , 1972 .

[38]  J. A. Robinson,et al.  A Machine-Oriented Logic Based on the Resolution Principle , 1965, JACM.

[39]  Conor McBride,et al.  Dependently typed functional programs and their proofs , 2000 .

[40]  Christoph Kreitz,et al.  The ILTP Library: Benchmarking Automated Theorem Provers for Intuitionistic Logic , 2005, TABLEAUX.

[41]  L. Bachmair,et al.  Completion without Failure 1 , 1989 .

[42]  J. Girard Une Extension De ĽInterpretation De Gödel a ĽAnalyse, Et Son Application a ĽElimination Des Coupures Dans ĽAnalyse Et La Theorie Des Types , 1971 .

[43]  Hans de Nivelle,et al.  Automated Proof Construction in Type Theory Using Resolution , 2000, CADE.

[44]  G. B. M. Principia Mathematica , 1911, Nature.

[45]  Derek C. Oppen,et al.  Reasoning about recursively defined data structures , 1978, POPL.

[46]  Robert E. Shostak,et al.  Deciding Combinations of Theories , 1982, JACM.