A logic for parametric polymorphism

  • Gordon Plotkin
  • Martín Abadi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 664)

Abstract

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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [ACC93]
    Martin Abadi, Luca Cardelli and Pierre-Louis Curien. Formal parametric polymorphism. To Appear in proceedings of Principles of Prgramming Languages '93.Google Scholar
  2. [AM89]
    Peter Aczel and Nax Mendler. A final co-algebra theorem. In D. H. Pitt et al., editors, Category Theory and Computer Science Lecture Notes in Computer Science, 389:357–365 Berlin, 1989. Springer-Verlag.Google Scholar
  3. [BFSS90]
    E. S. Bainbridge, Peter J. Freyd, Andre Scedrov, and Philip J. Scott. Functorial polymorphism. Theoretical Computer Science, 70(1):35–64, January 15 1990. Corrigendum in (3) 71, 10 April 1990, p. 431.Google Scholar
  4. [Böh85]
    Corrado Böhm and A. Berarducci. Automatic synthesis of typed Λ-programs on term algebras. Theoretical Computer Science, 39:85–114, 1985.Google Scholar
  5. [CMMS91]
    Luca Cardelli, Simone Martini, John Mitchell, and Andre Scedrov. An extension of system F with subtyping. In T. Ito and A. R. Meyer, editors, Theoretical Aspects of Computer Software, volume 526 of Lecture Notes in Computer Science, pages 750–770, Berlin, 1991. Springer-Verlag.Google Scholar
  6. [CG91]
    Pierre-Louis Curien and Giorgio Ghelli. Subtyping+extensionality: Confluence of βηtop reduction in F≤. In T. Ito and A. R. Meyer, editors, Theoretical Aspects of Computer Software, volume 526 of Lecture Notes in Computer Science, pages 731–749, Berlin, 1991. Springer-Verlag.Google Scholar
  7. [CG92]
    Pierre-Louis Curien and Giorgio Ghelli. Coherence of subsumption, minimum typing and type-checking in F≤. Mathematical Structures in Computer Science, 2(1):55–92, March 1992.Google Scholar
  8. [Has90]
    Ryu Hasegawa. Categorical data types in parametric polymorphism. Mathematical Structures in Computer Science, 1990. To appear.Google Scholar
  9. [Has91]
    Ryu Hasegawa. Parametricity of extensionally collapsed models of polymorphism and their categorical properties. In T. Ito and A. R. Meyer, editors, Theoretical Aspects of Computer Software, volume 526 of Lecture Notes in Computer Science, pages 495–512, Berlin, 1991. Springer-Verlag.Google Scholar
  10. [MR92]
    QingMing Ma and John C. Reynolds. Types, abstraction, and parametric polymorphism, part 2. In S. Brookes, M. Main, A. Melton, M. Mislove, and D. A. Schmidt, editors, Proceedings of the 1991 Mathematical Foundations of Programming Semantics Conference, Lecture Notes in Computer Science, Berlin, 1992. Springer-Verlag. To appear.Google Scholar
  11. [Mai91]
    Harry Mairson. Outline of a proof theory of parametricity. In Proc. 5th International Symp. on Functional Programming Languages and Computer Architecture, Springer-Verlag, 1991.Google Scholar
  12. [MP85]
    John C. Mitchell and Gordon D. Plotkin. Abstract types have existential type. In Proceedings of the Twelfth Annual ACM Symposium on Principles of Programming Languages, pages 37–51, 1985.Google Scholar
  13. [Mit90]
    John C. Mitchell. A type inference approach to reduction properties and semantics of polymorphic expressions (summary). In G. Huet, editor, Logical Foundations of Functional Programming, pages 195–212, Reading, 1990. Addison-Wesley.Google Scholar
  14. [Mit91]
    John C. Mitchell. On the equivalence of data representations. In V. Lifshitz, editor, Artificial Intelligence and Mathematical Theory of Computation: Papers in Honor of John McCarthy, Academic Press, pages 305–330, 1991.Google Scholar
  15. [Pit87]
    Andrew M. Pitts. Polymorphism is set-theoretic, constructively. In D. H. Pitt et al., editors, Category Theory and Computer Science Lecture Notes in Computer Science, 283:12–39 Berlin, 1987. Springer-Verlag.Google Scholar
  16. [Pit92]
    Andrew M. Pitts. A co-induction principle for recursively defined domains. To appear in Theoretical Computer Science.Google Scholar
  17. [Rey83]
    John C. Reynolds. Types, abstraction and parametric polymorphism. In R. E. A. Mason, editor, Information Processing 83, pages 513–523, Amsterdam, 1983. Elsevier Science Publishers B. V. (North-Holland).Google Scholar
  18. [RP90]
    John C. Reynolds and Gordon D. Plotkin. On functors expressible in the polymorphic typed lambda calculus. In G. Huet, editor, Logical Foundations of Functional Programming, pages 127–152, Reading, 1990. Addison-Wesley.Google Scholar
  19. [Smy91]
    Michael B. Smyth. I-categories and duality. In M. P. Fourman, P. T. Johnstone and A. M. Pitts, Applications of Categories in Computer Science London Mathematical Society Lecture Note Series, 177:270–287, Cambridge, 1991 Cambridge University Press.Google Scholar
  20. [Str67]
    Christopher Strachey. Fundamental concepts in programming languages. Lecture Notes, International Summer School in Programming Languages, Copenhagen, Unpublished, August 1967.Google Scholar
  21. [Wad89]
    Philip Wadler. Recursive types in polymorphic second-order lambda-calculus Draft, University of Glasgow 1990.Google Scholar
  22. [Wra89]
    Gavin C. Wraith. A note on categorical datatypes. In A. M. Pitts and A. Poigné, editors, Category Theory and Computer Science Lecture Notes in Computer Science, 39:118–127, Berlin, 1989, Springer-Verlag.Google Scholar

Copyright information

© Springer-Verlag 1993

Authors and Affiliations

  • Gordon Plotkin
    • 1
  • Martín Abadi
    • 2
  1. 1.Department of Computer ScienceUniversity of EdinburghEdinburghUK
  2. 2.Systems Research CenterDigital Equipment CorporationPalo AltoUSA

Personalised recommendations