Definitions by rewriting in the Calculus of Constructions

This paper presents general syntactic conditions ensuring the strong normalisation and the logical consistency of the Calculus of Algebraic Constructions, an extension of the Calculus of Constructions with functions and predicates defined by higher-order rewrite rules. On the one hand, the Calculus of Constructions is a powerful type system in which one can formalise the propositions and natural deduction proofs of higher-order logic. On the other hand, rewriting is a simple and powerful computation paradigm. The combination of the two allows, among other things, the development of formal proofs with a reduced size and more automation compared with more traditional proof assistants. The main novelty is to consider a general form of rewriting at the predicate-level that generalises the strong elimination of the Calculus of Inductive Constructions.

[1]  Thierry Coquand,et al.  The Calculus of Constructions , 1988, Inf. Comput..

[2]  Narciso Martí-Oliet,et al.  Maude: specification and programming in rewriting logic , 2002, Theor. Comput. Sci..

[3]  Eduardo Giménez,et al.  Structural Recursive Definitions in Type Theory , 1998, ICALP.

[4]  P. Mendler Inductive Definition in Type Theory , 1988 .

[5]  Frédéric Blanqui,et al.  Inductive types in the Calculus of Algebraic Constructions , 2003, Fundam. Informaticae.

[6]  Jean-Pierre Jouannaud,et al.  Abstract Data Type Systems , 1997, Theor. Comput. Sci..

[7]  Mitsuhiro Okada,et al.  Strong normalizability for the combined system of the typed lmbda calculus and an arbitrary convergent term rewrite system , 1989, ISSAC '89.

[8]  Claude Kirchner,et al.  HOL-λσ: an intentional first-order expression of higher-order logic , 2001, Mathematical Structures in Computer Science.

[9]  T. Coquand Une théorie des constructions , 1985 .

[10]  Fritz Müller,et al.  Confluence of the Lambda Calculus with Left-Linear Algebraic Rewriting , 1992, Inf. Process. Lett..

[11]  Nachum Dershowitz Hierachical Termination , 1994, CTRS.

[12]  William W. Tait,et al.  Intensional interpretations of functionals of finite type I , 1967, Journal of Symbolic Logic.

[13]  Tobias Nipkow,et al.  Higher-order critical pairs , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[14]  Jean-Pierre Jouannaud,et al.  Proofs by induction in equational theories without constructors , 1985, Bull. EATCS.

[15]  Hans Zantema,et al.  Termination of Term Rewriting: Interpretation and Type Elimination , 1994, J. Symb. Comput..

[16]  Frédéric Blanqui,et al.  Definitions by rewriting in the calculus of constructions , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[17]  M. T. Stefanova Properties of typing systems , 1999 .

[18]  Claude Kirchner,et al.  Theorem Proving Modulo , 2003, Journal of Automated Reasoning.

[19]  N. Dershowitz Termination , 1994, RTA.

[20]  Albert Rubio,et al.  The higher-order recursive path ordering , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[21]  Hugo Herbelin,et al.  The Coq proof assistant : reference manual, version 6.1 , 1997 .

[22]  J. C. van dePol Termination of higher-order rewrite systems , 1996 .

[23]  Gilles Barthe,et al.  On the Subject Reduction Property for Algebraic Type Systems , 1996, CSL.

[24]  de Ng Dick Bruijn,et al.  The mathematical language AUTOMATH, its usage, and some of its extensions , 1970 .

[25]  Frédéric Blanqui,et al.  Termination and Confluence of Higher-Order Rewrite Systems , 2000, RTA.

[26]  V. Breazu-Tannen,et al.  Combining algebra and higher-order types , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[27]  Val Tannen,et al.  Polymorphic Rewriting Conserves Algebraic Strong Normalization , 1991, Theor. Comput. Sci..

[28]  J. Girard,et al.  Proofs and types , 1989 .

[29]  Steven Eker Fast matching in combinations of regular equational theories , 1996, WRLA.

[30]  Thierry Coquand,et al.  An Analysis of Girard's Paradox , 1986, LICS.

[31]  Gilles Dowek,et al.  Proof normalization modulo , 1998, Journal of Symbolic Logic.

[32]  John C. Mitchell,et al.  Parametricity and Variants of Girard's J Operator , 1999, Inf. Process. Lett..

[33]  Pierre Courtieu,et al.  Normalized Types , 2001, CSL.

[34]  Emmanuel Kounalis,et al.  Completeness in Data Type Specifications , 1985, European Conference on Computer Algebra.

[35]  Mark E. Stickel,et al.  Complete Sets of Reductions for Some Equational Theories , 1981, JACM.

[36]  Erik Poll,et al.  Pure Type Systems with Definitions , 1994, LFCS.

[37]  Yoshihito Toyama,et al.  Counterexamples to Termination for the Direct Sum of Term Rewriting Systems , 1987, Inf. Process. Lett..

[38]  Jieh Hsiang,et al.  Refutational Theorem Proving Using Term-Rewriting Systems , 1985, Artif. Intell..

[39]  Gilles Barthe,et al.  The Relevance of Proof-Irrelevance , 1998, ICALP.

[40]  Alex Sellink,et al.  Verifying Process Algebra Proofs in Type Theory , 1993, Semantics of Specification Languages.

[41]  Hélène Kirchner,et al.  Under Consideration for Publication in J. Functional Programming Promoting Rewriting to a Programming Language: a Compiler for Non-deterministic Rewrite Programs in Associative-commutative Theories , 2022 .

[42]  Daria Walukiewicz-Chrzaszcz,et al.  Termination of rewriting in the Calculus of Constructions , 2003, Journal of Functional Programming.

[43]  T. Coquand An algorithm for testing conversion in type theory , 1991 .

[44]  Tobias Nipkow,et al.  Term rewriting and all that , 1998 .

[45]  Jean-Pierre Jouannaud,et al.  The Calculus of algebraic Constructions , 1999, RTA.

[46]  Michaël Rusinowitch,et al.  On Termination of the Direct Sum of Term-Rewriting Systems , 1987, Inf. Process. Lett..

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

[48]  J. Gallier,et al.  A Proof of Strong Normalization for the Theor y of Constructions Using a Kripke-like Interpretation , 1990 .

[49]  Christine Paulin-Mohring,et al.  Inductive Definitions in the system Coq - Rules and Properties , 1993, TLCA.

[50]  Vincent van Oostrom,et al.  Combinatory Reduction Systems: Introduction and Survey , 1993, Theor. Comput. Sci..

[51]  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 .

[52]  Herman Geuvers,et al.  Modularity of strong normalization in the algebraic-λ-cube , 1997, Journal of Functional Programming.

[53]  Herman Geuvers,et al.  A short and flexible proof of Strong Normalization for the Calculus of Constructions , 1994, TYPES.

[54]  J. H. Geuvers Logics and type systems , 1993 .

[55]  Val Tannen,et al.  Polymorphic Rewriting Conserves Algebraic Confluence , 1994, Inf. Comput..

[56]  Daniel J. Dougherty Adding Algebraic Rewriting to the Untyped Lambda Calculus (Extended Abstract) , 1991, RTA.

[57]  Jean-Jacques Thiel Stop losing sleep over incomplete data type specifications , 1984, POPL '84.

[58]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[59]  J. Gallier On Girard's "Candidats de Reductibilité" , 1989 .

[60]  Martín Abadi,et al.  Explicit substitutions , 1989, POPL '90.

[61]  Thierry Coquand,et al.  Inductively defined types , 1988, Conference on Computer Logic.

[62]  Frédéric Blanqui Théorie des types et réécriture. (Type theory and rewriting) , 2001 .

[63]  Herman Geuvers,et al.  Modularity of strong normalization and confluence in the algebraic-/spl lambda/-cube , 1994, Proceedings Ninth Annual IEEE Symposium on Logic in Computer Science.

[64]  Frédéric Blanqui Rewriting Modulo in Deduction Modulo , 2003, RTA.

[65]  J. V. D. Pol,et al.  Termination of higher-order rewrite systems , 1996 .

[66]  Lennart Augustsson,et al.  Compiling Pattern Matching , 1985, FPCA.

[67]  Christine Paulin-Mohring,et al.  Extracting ω's programs from proofs in the calculus of constructions , 1989, POPL '89.

[68]  Jean-Pierre Jouannaud,et al.  Inductive-data-type systems , 2002, Theor. Comput. Sci..

[69]  V. van Oostrom,et al.  Confluence for Abstract and Higher-Order Rewriting , 1994 .

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

[71]  Rp Rob Nederpelt Strong normalization in a typed lambda calculus with lambda structured types , 1994 .

[72]  Franco Barbanera,et al.  Adding Algebraic Rewriting to the Calculus of Constructions: Strong Normalization Preserved , 1990, CTRS.

[73]  Helmut Schwichtenberg,et al.  Strict Functionals for Termination Proofs , 1995, TLCA.

[74]  Jaco van de Pol,et al.  Termination Proofs for Higher-order Rewrite Systems , 1993, HOA.

[75]  James J. Horning,et al.  The algebraic specification of abstract data types , 1978, Acta Informatica.

[76]  Frédéric Blanqui Théorie des types et réécriture , 2001 .

[77]  Jean-Pierre Jouannaud,et al.  A computation model for executable higher-order algebraic specification languages , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[78]  Jieh Hsiang,et al.  Topics in Automated Theorem Proving and Program Generation , 1983 .

[79]  Mark-Jan Nederhof,et al.  Modular proof of strong normalization for the calculus of constructions , 1991, Journal of Functional Programming.

[80]  Benjamin Werner,et al.  Une Théorie des Constructions Inductives , 1994 .

[81]  Nachum Dershowitz,et al.  Orderings for term-rewriting systems , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[82]  Thorsten Altenkirch,et al.  Constructions, inductive types and strong normalization , 1993, CST.