Abstract
The concept of relations over sets is generalized to relations over an arbitrary category, and used to investigate the abstraction (or logical-relations) theorem, the identity extension lemma, and parametric polymorphism, for Cartesian-closed-category models of the simply typed lambda calculus and PL-category models of the polymorphic typed lambda calculus. Treatments of Kripke relations and of complete relations on domains are included.
This research was sponsored in part by National Science Foundation Grant CCR-8922109 and in part by the Avionics Lab, Wright Research and Development Center, Aeronautical Systems Division (AFSC), U.S. Air Force, Wright-Patterson AFB, OH 45433-6543 under Contract F33615-90-C-1465, Arpa Order No. 7597. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of the U.S. Government.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Reynolds, J. C. Types, Abstraction and Parametric Polymorphism, in: Information Processing 83, Proceedings of the IFIP 9th World Computer Congress, Paris, September 19–23, 1983, edited by R. E. A. Mason. Elsevier Science Publishers B. V. (North-Holland), Amsterdam, 1983, pp. 513–523.
Girard, J.-Y. Une Extension de l'Interprétation de Gödel à l'Analyse, et son Application à l'Elimination des Coupures dans l'Analyse et la Théorie des Types, in: Proceedings of the Second Scandinavian Logic Symposium, University of Oslo, June 18–20, 1970, edited by J. E. Fenstad. Studies in Logic and the Foundations of Mathematics, vol. 63, North-Holland, Amsterdam, 1971, pp. 63–92.
Girard, J.-Y. Interprétation Fonctionnelle et Elimination des Coupures de l'Arithmétique d'Ordre Supérieur, Thèse de doctorat d'état. Université Paris VII, June 1972.
Reynolds, J. C. Towards a Theory of Type Structure, in: Programming Symposium, Proceedings, Colloque sur la Programmation, Paris, April 9–11, edited by B. Robinet. Lecture Notes in Computer Science, vol. 19, Springer-Verlag, Berlin, 1974, pp. 408–425.
Strachey, C. Fundamental Concepts in Programming Languages. Unpublished lecture notes, International Summer School in Computer Programming, Copenhagen, August 1967.
Plotkin, G. D. Lambda-Definability and Logical Relations. Memorandum, no. SAI-RM-4, University of Edinburgh, School of Artificial Intelligence, October 1973.
Reynolds, J. C. Polymorphism is not Set-Theoretic. in: Semantics of Data Types, International Symposium, Sophia-Antipolis, France, June 27–29, edited by G. Kahn, D. B. MacQueen, and G. D. Plotkin. Lecture Notes in Computer Science, vol. 173, Springer-Verlag, Berlin, 1984, pp. 145–156.
Reynolds, J. C. and Plotkin, G. D. On Functors Expressible in the Polymorphic Typed Lambda Calculus. Report, no. CMU-CS-90-147, Carnegie Mellon University, School of Computer Science, July 6, 1990. Also to appear in Information and Computation.
Seely, R. A. G. Categorical Semantics for Higher Order Polymorphic Lambda Calculus. Journal of Symbolic Logic, vol. 52 (1987), pp. 969–989.
Pitts, A. M. Polymorphism is Set Theoretic, Constructively, in: Category Theory and Computer Science, Edinburgh, Scotland, September 7–9, edited by D. H. Pitt, A. Poigné, and D. E. Rydeheard. Lecture Notes in Computer Science, vol. 283, Springer-Verlag, Berlin, 1987.
Narayanan, B. R. A General Framework for Models of Type Polymorphism, Ph. D. Dissertation. Syracuse University, December 1988, vi+155 pp. Report No. CIS-89-1.
Lambek, J. and Scott, P. J. Introduction to Higher Order Categorical Logic. Cambridge Studies in Advanced Mathematics, vol. 7, Cambridge University Press, Cambridge, England, 1986, ix+293 pp.
Barr, M. and Wells, C. Toposes, Triples, and Theories. Grundlehren der mathematischen Wissenschaften, vol. 278, Springer-Verlag, New York, 1985, xiii+345 pp.
Lawvere, F. W. Functorial Semantics of Algebraic Theories. Proceedings of the National Academy of Sciences of the United States of America, vol. 50 (1963), pp. 869–872.
Lawvere, F. W. Some Algebraic Problems in the Context of Functorial Semantics of Algebraic Theories. in: Reports of the Midwest Category Seminar II, edited by S. Mac Lane. Lecture Notes in Mathematics, vol. 61, Springer-Verlag, Berlin, 1968, pp. 41–61.
Mac Lane, S. Categories for the Working Mathematician. Graduate Texts in Mathematics, vol. 5, Springer-Verlag, New York, 1971, ix+262 pp.
Milner, R. A Theory of Type Polymorphism in Programming. Journal of Computer and System Sciences, vol. 17 (1978), pp. 348–375.
Damas, L. and Milner, R. Principal Type-Schemes for Functional Programs. in: Conference Record of the Ninth Annual ACM Symposium on Principles of Programming Languages, Albuquerque, New Mexico, January 25–27. 1982, pp. 207–212.
Harper, R. and Mitchell, J. C. On the Type Structure of Standard ML. ACM Transactions on Programming Languages and Systems, To appear.
Plotkin, G. D. Lambda-Definability in the Full Type Hierarchy, in: To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, edited by J. P. Seldin and J. R. Hindley. Academic Press, London, 1980, pp. 363–373.
McCracken, N. J. An Investigation of a Programming Language with a Polymorphic Type Structure, Ph. D. Dissertation. Syracuse University, June 1979, iv+126 pp.
McCracken, N. J. A Finitary Retract Model for the Polymorphic Lambda-Calculus. Unpublished, Syracuse University, 1982.
Amadio, R., Bruce, K. B., and Longo, G. The Finitary Projection Model for Second Order Lambda Calculus and Solutions to Higher Order Domain Equations, in: Proceedings Symposium on Logic in Computer Science, Cambridge, Massachusetts, June 16–18. 1986, pp. 122–130.
Girard, J.-Y. The System F of Variable Types, Fifteen Years Later. Theoretical Computer Science, vol. 45 (1986), pp. 159–192.
Coquand, T., Gunter, C. A., and Winskel, G. DI-Domains as a Model of Polymorphism. in: Mathematical Foundations of Programming Language Semantics, 3rd Workshop, Tulane University, New Orleans, April 8–10, 1987, edited by M. Main, A. Melton, M. Mislove, and D. A. Schmidt. Lecture Notes in Computer Science, vol. 298, Springer-Verlag, Berlin, 1988, pp. 344–363.
Coquand, T., Gunter, C. A., and Winskel, G. Domain Theoretic Models of Polymorphism. Information and Computation, vol. 81 (1989), pp. 123–167.
Howard, W. A. Hereditarily Majorizable Functionals of Finite Type. in: Metamathematical Investigation of Intuitionistic Arithmetic and Analysis, edited by A. S. Troelstra. Lecture Notes in Mathematics, vol. 344, Springer-Verlag, Berlin, 1973, pp. 454–461. Appendix.
Statman, R. Logical Relations and the Typed λ-Calculus. Information and Control, vol. 65 (1985), pp. 85–97.
Mitchell, J. C. and Meyer, A. R. Second-order Logical Relations (Extended Abstract). in: Logic of Programs, Brooklyn, New York, June 17–19, edited by R. Parikh. Lecture Notes in Computer Science, vol. 193, Springer-Verlag, Berlin, 1985, pp. 225–236.
Bruce, K. B., Meyer, A. R., and Mitchell, J. C. The Semantics of Second-Order Lambda Calculus. Information and Computation, vol. 85 (1990), pp. 76–134.
Jacobs, B. P. F. On the Semantics of Second Order Lambda Calculus: From BruceMeyer-Mitchell Models to Hyperdoctrine Models and Vice-Versa. in: Category Theory and Computer Science, Manchester, UK, September 5–8, edited by D. H. Pitt, D. E. Rydeheard, P. Dybjer, A. M. Pitts, and A. Poigné. Lecture Notes in Computer Science, vol. 389, Springer-Verlag, Berlin, 1989, pp. 198–212.
Jacobs, B. P. F. Semantics of the second order Lambda Calculus. Mathematical Structures in Computer Science, To appear.
Wadler, P. Theorems for Free. in: Functional Programming Languages and Computer Architecture, FPCA '89 Conference Proceedings Fourth International Conference, Imperial College, London, September 11–13. ACM, 1989, pp. 347–359.
Hasegawa, R. Categorical Data Types in Parametric Polymorphism. Unpublished, November 16, 1990.
Freyd, P. J. and Scedrov, A. Categories, Allegories. North-Holland Mathematical Library, vol. 39, North-Holland, Amsterdam, 1990, xviii+296 pp.
Mitchell, J. C. and Scedrov, A. Sconing, Relators, and Parametricity. Unpublished draft, October 21, 1991.
Bainbridge, E. S., Freyd, P. J., Scedrov, A., and Scott, P. J. Functorial Polymorphism. Theoretical Computer Science, vol. 70 (1990), pp. 35–64. Corrigendum in (3) 71, 10 April 1990, p. 431.
Girard, J.-Y., Scedrov, A., and Scott, P. J. Normal Forms and Cut-Free Proofs as Natural Transformations. in: Logic from Computer Science, A Mathematical Sciences Research Institute Workshop, Berkeley, California, November 1989, edited by Y. N. Moschovakis. MSRI Series, vol. 21, Springer-Verlag, 1991, pp. 217–241.
Freyd, P. J. Structural Polymorphism. Unpublished, January 23, 1989.
Kelly, G. M. Private communication. July 1991.
Abramsky, S. and Jensen, T. P. A Relational Approach to Strictness Analysis for Higher-Order Polymorphic Functions. in: Conference Record of the Eighteenth Annual ACM Symposium on Principles of Programming Languages, Orlando, Florida, January 21–23. 1991, pp. 49–54.
Böhm, C. and Berarducci, A. Automatic Synthesis of Typed λ-Programs on Term Algebras. Theoretical Computer Science, vol. 39 (1985), pp. 135–154.
Leivant, D. Reasoning About Functional Programs and Complexity Classes Associated with Type Disciplines. in: 24th Annual Symposium on Foundations of Computer Science, IEEE, Tucson, Arizona, November 7–9. 1983, pp. 460–469.
Martin-Löf, P. A Construction of the Provable Wellorderings of the Theory of Species. Unpublished.
Freyd, P. J. POLYNAT in PER. in: Categories in Computer Science and Logic, Boulder, Colorado, June 14–20,1987, edited by J. W. Gray and A. Scedrov. Contemporary Mathematics, vol. 92, American Mathematical Society, Providence, Rhode Island, 1989, pp. 67–68.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ma, Q., Reynolds, J.C. (1992). Types, abstraction, and parametric polymorphism, part 2. In: Brookes, S., Main, M., Melton, A., Mislove, M., Schmidt, D. (eds) Mathematical Foundations of Programming Semantics. MFPS 1991. Lecture Notes in Computer Science, vol 598. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55511-0_1
Download citation
DOI: https://doi.org/10.1007/3-540-55511-0_1
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55511-7
Online ISBN: 978-3-540-47194-3
eBook Packages: Springer Book Archive