Skip to main content

The Girard-Reynolds Isomorphism

  • Conference paper
  • First Online:
Theoretical Aspects of Computer Software (TACS 2001)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2215))

Included in the following conference series:

Abstract

The second-order polymorphic lambda calculus, F2, was independently discovered by Girard and Reynolds. Girard additionally proved a representation theorem: every function on natural numbers that can be proved total in second-order intuitionistic propositional logic, P2, can be represented in F2. Reynolds additionally proved an abstraction theorem: for a suitable notion of logical relation, every term in F2 takes related arguments into related results. We observe that the essence of Girard’s result is a projection from P2 into F2, and that the essence of Reynolds’s result is an embeddingof F2 into P2, and that the Reynolds embeddingfollo wed by the Girard projection is the identity. The Girard projection discards all first-order quantifiers, so it seems unreasonable to expect that the Girard projection followed by the Reynolds embeddingshould also be the identity. However, we show that in the presence of Reynolds’s parametricity property that this is indeed the case, for propositions correspondingto inductive definitions of naturals, products, sums, and fixpoint types.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Abadi, L. Cardelli, and P.-L. Curien, Formal Parametric Polymorphism, Theoretical Computer Science 121(1-2):9–58, December 1993. (Part of A Collection of Contributions in Honour of Corrado Boehm on the Occasion of his 70th Birthday.) Also appeared as SRC Research Report 109.

    Article  MATH  MathSciNet  Google Scholar 

  2. H. Barendregt, Introduction to generalized types systems, Journal of Functional Programming, 1(2):125–154, April 1991.

    MATH  MathSciNet  Google Scholar 

  3. E. S. Bainbridge, P. J. Freyd, A. Scedrov, and P. J. Scott, Functorial polymorphism, in G. Huet, editor, Logical Foundations of Functional Programming, pp. 315–330, Addison-Wesley, 1990.

    Google Scholar 

  4. C. Böhm and A. Berarducci, Automatic synthesis of typed Λ-programs on term algebras, Theoretical Computer Science 39(2-3):135–154, August 1985.

    Article  MATH  MathSciNet  Google Scholar 

  5. V. Breazu-Tannen and T. Coquand, Extensional models for polymorphism, Theoretical Computer Science, 59:85–114, 1988.

    Article  MathSciNet  MATH  Google Scholar 

  6. H. B. Curry and R. Feys, Combinatory Logic, North Holland, 1958.

    Google Scholar 

  7. T. Coquand and G. Huet, The calculus of constructions, Information and Computation, 76:95–120, 1988.

    Article  MathSciNet  MATH  Google Scholar 

  8. R. Constable, et al., Implementing mathematics with the Nuprl proof development system, Prentice-Hall, 1986.

    Google Scholar 

  9. N. G. de Bruijn, The mathematical language of AUTOMATH, its usage and some of its extensions, Proceedings of the Symposium on Automatic Demonstration, LNCS 125, Springer-Verlag, 1970.

    Chapter  Google Scholar 

  10. L. Damas and R. Milner, Principal type schemes for functional programs, 9’th Annual Symposium on Principles of Programming Languages, Albuquerque, N.M., January 1982.

    Google Scholar 

  11. Gottlob Frege. Begriffsschrift, a formula language, modeled upon that of arithmetic, for pure thought (1879). In Jan van Heijenoort, editor, FromFrege to Godel: A Source Book in Mathematical Logic, 1879-1931. Harvard University Press, 1967.

    Google Scholar 

  12. J.-Y. Girard, Interprétation functionelle et élimination des coupures dans l’arithmétique d’ordre supérieure, Ph.D. thesis, Université Paris VII, 1972.

    Google Scholar 

  13. J.-Y. Girard, Y. Lafont, and P. Taylor, Proofs and Types, Cambridge University Press, 1989.

    Google Scholar 

  14. R. Hasegawa, Categorical data types in parametric polymorphism, Mathematical Structures in Computer Science, 4:71–109, (1994).

    Article  MATH  MathSciNet  Google Scholar 

  15. R. Hindley, The principal type scheme of an object in combinatory logic, Trans. Am. Math. Soc., 146:29–60, December 1969.

    Article  MATH  MathSciNet  Google Scholar 

  16. W. A. Howard, The formulae-as-types notion of construction, in J. P. Seldin and J. R. Hindley, editors, To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus, and Formalism, Academic Press, 1980. (The original version was circulated privately in 1969.)

    Google Scholar 

  17. J.-L. Krivine and M. Parigot, Programming with proofs, J. Inf. Process. Cybern. (EIK), 26(3): 149–167, 1990. (Revised version of a lecture presented at the 6’th International Symposium on Computation Theory, (SCT’ 87), Wednisch-Rietz, GDR, 30 November-4 December 1987.

    MATH  MathSciNet  Google Scholar 

  18. D. Leivant, Reasoning about functional programs and complexity classes associated with type disciplines, 24’th Symposium on Foundations of Computer Science, Washington D.C., IEEE, 460–469.

    Google Scholar 

  19. D. Leivant, Contractingpro ofs to programs, in P. Odifreddi, editor, Logic and Computer Science, Academic Press, 1990.

    Google Scholar 

  20. H. Mairson, Outline of a proof theory of parametricity, in J. Hughes, editor, 5’th International Conference on Functional Programming Languages and Computer Architecture, Springer-Verlag LNCS 523, Cambridge, Massachusetts, August 1991.

    Google Scholar 

  21. P. Martin-Lof, Constructive mathematics and computer programming, 6’th International Congress for Logic, Methodology, and Philosophy of Science, North Holland, pp. 153–175, 1982.

    Google Scholar 

  22. R. Milner, A theory of type polymorphism in programming, Journal of Computers and Systems Science, 17:348–375, 1978.

    Article  MATH  MathSciNet  Google Scholar 

  23. E. Moggi, Communication to the Types electronic forum, 10 February 1986.

    Google Scholar 

  24. Q. Ma and J. C. Reynolds, Types, abstraction, and parametric polymorphism, part 2, in S. Brookes et al. editors, Mathematical Foundations of Programming Semantics, Springer Verlag LNCS, 1991.

    Google Scholar 

  25. A. M. Pitts, Polymorphism Is Set Theoretic, Constructively, in D. H. Pitt and A. Poign’e and D. E. Rydeheard, editors, Category Theory and Computer Science, pages 12–39, Edinburgh 1987.

    Google Scholar 

  26. A. M. Pitts, Non-trivial power types can’t be subtypes of polymorphic types, in 4th Annual Symposium on Logic in Computer Science, pages 6–13, IEEE Computer Society Press, Washington 1989.

    Google Scholar 

  27. A. M. Pitts, Parametric polymorphism and operational equivalence, technical report 453, Cambridge University Computer Laboratory, 1998.

    Google Scholar 

  28. G. Plotkin and M. Abadi, A logic for parametric polymorphism, in M. Bezem and J. F. Groote, editors, Typed Lambda Calculi and Applications, LNCS 664, Springer-Verlag, pp. 361–375, March 1993.

    Chapter  Google Scholar 

  29. G. Plotkin, M. Abadi, and L. Cardelli, Subtypingand parametricity, 9’th Annual Symposium on Logic in Computer Science, pp. 310–319, July 1994.

    Google Scholar 

  30. J. C. Reynolds, Towards a theory of type structure, in B. Robinet, editor, Colloque sur la Programmation, LNCS 19, Springer-Verlag.

    Google Scholar 

  31. J. C. Reynolds, Types, abstraction, and parametric polymorphism, in R. E. A. Mason, editor, Information Processing 83, pp. 513–523, North-Holland, Amsterdam, 1983.

    Google Scholar 

  32. J. C. Reynolds, Polymorphism is not set theoretic, in Kahn, MacQueen, and Plotkin, editors, Semantics of Data Types, Sophia-Antipolis, France, pp. 145–156, LNCS 173, Springer-Verlag, 1984.

    Google Scholar 

  33. J. C. Reynolds, Introduction to Part II: Polymorphic Lambda Calculus, in G. Huet, editor, Logical Foundations of Functional Programming, Addison-Wesley, 1990.

    Google Scholar 

  34. J. C. Reynolds and G. D. Plotkin, On Functors Expressible in the polymorphic typed lambda calculus, in G. Huet, editor, Logical Foundations of Functional Programming, pp. 127–152, Addison-Wesley, 1990.

    Google Scholar 

  35. C. Strachey, Fundamental concepts in programming languages, Lecture notes, International Summer School in Computer Programming, Copenhagen, August 1967. Reprinted in Higher-Order and Symbolic Computation 13(1/2):11–49, May 2000.

    Article  MATH  Google Scholar 

  36. Izumi Takeuiti, An axiomatic system of parametricity, Fundamenta Informaticae, 33:397–432, IOS Press, 1998.

    MathSciNet  Google Scholar 

  37. P. Wadler, Theorems for free!, 4’th International Conference on Functional Programming Languages and Computer Architecture, ACM Press, London, September 1989.

    Google Scholar 

  38. P. Wadler, Recursive types for free!, manuscript, 1991.

    Google Scholar 

Download references

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wadler, P. (2001). The Girard-Reynolds Isomorphism. In: Kobayashi, N., Pierce, B.C. (eds) Theoretical Aspects of Computer Software. TACS 2001. Lecture Notes in Computer Science, vol 2215. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45500-0_24

Download citation

  • DOI: https://doi.org/10.1007/3-540-45500-0_24

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42736-0

  • Online ISBN: 978-3-540-45500-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics