A Logic for Parametric Polymorphism

In this paper we introduce a logic for parametric polymorphism. Just as LCF is a logic for the simply-typed λ-calculus with recursion and arithmetic, our logic is a logic for System F. The logic permits the formal presentation and use of relational parametricity. Parametricity yields-for example-encodings of initial algebras, final co-algebras and abstract datatypes, with corresponding proof principles of induction, co-induction and simulation.

[1]  John C. Reynolds,et al.  Types, Abstraction and Parametric Polymorphism , 1983, IFIP Congress.

[2]  R. E. A. Mason,et al.  Information Processing 83 , 1984 .

[3]  John C. Mitchell,et al.  Abstract types have existential types , 1985, POPL.

[4]  Corrado Böhm,et al.  Automatic Synthesis of Typed Lambda-Programs on Term Algebras , 1985, Theor. Comput. Sci..

[5]  John C. Mitchell A type-inference approach to reduction properties and semantics of polymorphic expressions (summary) , 1986, LFP '86.

[6]  Andrew M. Pitts,et al.  Category Theory and Computer Science , 1987, Lecture Notes in Computer Science.

[7]  Andrew M. Pitts,et al.  Polymorphism is Set Theoretic, Constructively , 1987, Category Theory and Computer Science.

[8]  G. C. Wraith A Note on Categorical Datatypes , 1989, Category Theory and Computer Science.

[9]  Peter Aczel,et al.  A Final Coalgebra Theorem , 1989, Category Theory and Computer Science.

[10]  Gérard Huet,et al.  Logical Foundations of Functional Programming , 1990 .

[11]  Andre Scedrov,et al.  Functorial Polymorphism , 1990, Theor. Comput. Sci..

[12]  John C. Reynolds,et al.  Types, Abstractions, and Parametric Polymorphism, Part 2 , 1991, MFPS.

[13]  Harry G. Mairson Outline of a Proof Theory of Parametricity , 1991, FPCA.

[14]  Giorgio Ghelli,et al.  Subtyping + Extensionality: Confluence of beta-eta-top reduction in F<= , 1991, TACS.

[15]  John C. Mitchell,et al.  On the Equivalence of Data Representations , 1991, Artificial and Mathematical Theory of Computation.

[16]  Ryu Hasegawa Parametricity of Extensionally Collapsed Term Models of Polymorphism and Their Categorical Properties , 1991, TACS.

[17]  Luca Cardelli,et al.  An Extension of System F with Subtyping , 1991, TACS.

[18]  Giorgio Ghelli,et al.  Coherence of Subsumption, Minimum Typing and Type-Checking in F<= , 1992, Math. Struct. Comput. Sci..

[19]  M. Fourman,et al.  I-categories and duality , 1992 .

[20]  Martín Abadi,et al.  Formal parametric polymorphism , 1993, POPL '93.

[21]  John C. Reynolds,et al.  On Functors Expressible in the Polymorphic Typed Lambda Calculus , 1993, Inf. Comput..

[22]  Andrew M. Pitts,et al.  A co-Induction Principle for Recursively Defined Domains , 1994, Theor. Comput. Sci..

[23]  Ryu Hasegawa,et al.  Categorical data types in parametric polymorphism , 1994, Mathematical Structures in Computer Science.