Type Isomorphisms and Proof Reuse in Dependent Type Theory

We propose a theoretical foundation for proof reuse, based on the novel idea of a computational interpretation of type isomorphisms.

[1]  Amy P. Felty,et al.  Generalization and Reuse of Tactic Proofs , 1994, LPAR.

[2]  Gustavo Betarte Dependent Record Types and Algebraic Structures in Type Theory , 1998 .

[3]  Régis Curien Outils pour la preuve par analogie , 1995 .

[4]  Mikael Rittri,et al.  Using types as search keys in function libraries , 1989, Journal of Functional Programming.

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

[6]  Zhaohui Luo,et al.  Coercive Subtyping , 1995 .

[7]  Nicolas Magaud,et al.  Changement de représentation des structures de données en Coq: le cas des entiers naturels , 2001, JFLA.

[8]  Venanzio Capretta,et al.  Universal Algebra in Type Theory , 1999, TPHOLs.

[9]  Venanzio Capretta Recursive Families of Inductive Types , 2000, TPHOLs.

[10]  M. Hofmann Extensional concepts in intensional type theory , 1995 .

[11]  Amokrane Saïbi Typing algorithm in type theory with inheritance , 1997, POPL '97.

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

[13]  Frank Pfenning,et al.  Dependent types in practical programming , 1999, POPL '99.

[14]  Gilles Barthe,et al.  Constructor Subtyping , 1999, ESOP.

[15]  Thomas Kolbe,et al.  Proof Analysis, Generalization and Reuse , 1998 .

[16]  Amy P. Felty,et al.  The Coq proof assistant user's guide : version 5.6 , 1990 .

[17]  David Delahaye,et al.  Recherche dans une bibliothèque de preuves Coq en utilisant le type et modulo isomorphismes , 1997 .

[18]  Gilles Barthe,et al.  A Two-Level Approach Towards Lean Proof-Checking , 1995, TYPES.

[19]  Gilles Barthe,et al.  Type-checking injective pure type systems , 1999, Journal of Functional Programming.

[20]  Lennart Augustsson,et al.  Cayenne—a language with dependent types , 1998, ICFP '98.

[21]  Robert Pollack,et al.  Dependently Typed Records for Representing Mathematical Structure , 2000, TPHOLs.

[22]  T. Coquand,et al.  Metamathematical investigations of a calculus of constructions , 1989 .

[23]  Christopher League Review of Isomorphisms of Types:: from λ-calculus to information retrieval and language design by Roberto Di Cosmo (Birkhauser, 1995) , 1997, SIGA.

[24]  Desmond Fearnley-Sander,et al.  Universal Algebra , 1982 .

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

[26]  Luca Cardelli,et al.  On understanding types, data abstraction, and polymorphism , 1985, CSUR.

[27]  Herman Geuvers,et al.  Equational Reasoning via Partial Reflection , 2000, TPHOLs.

[28]  Wolfgang Bibel,et al.  Automated Deduction - A Basis for Applications : Volume II: Systems and Implementation Techniques , 1998 .

[29]  Paula Severi Type Inference for Pure Type Systems , 1998, Inf. Comput..

[30]  Roberto Di Cosmo Review of Isomorphisms of Types:: from λ-calculus to information retrieval and language design , 1997 .

[31]  Philip Wadler,et al.  Views: a way for pattern matching to cohabit with data abstraction , 1987, POPL '87.

[32]  R. Pollack The Theory of LEGO A Proof Checker for the Extended Calculus of Constructions , 1994 .

[33]  Jeannette M. Wing,et al.  Specifications as Search Keys for Software Libraries , 1991, ICLP.

[34]  Gilles Barthe,et al.  Implicit Coercions in Type Systems , 1995, TYPES.

[35]  Roberto Di Cosmo,et al.  Isomorphisms of Types , 1995, Progress in Theoretical Computer Science.

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