Skip to main content

The integration of logical and algebraic types

  • Part 1: Fundamental Categorical Methods In Computer Science
  • Conference paper
  • First Online:

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

Abstract

Three versions of the lambda calculus are discussed: typed lambda calculus, untyped lambda calculus, and polymorphically typed lambda calculus. It is shown that the syntax for these calculi can be described as initial algebras for suitable endofunctors. Models of the first two calculi are described as in [Lambek and Scott 1985] and the Per model of the third is recalled. Algebraic types are described in terms of sketches. A main contribution of the paper is the internalization of the theory of sketches in the category Per. Sketches themselves, models of sketches, categories of models of sketches and the category of all models of all sketches can all be realized in this setting. Next, dinatural transformations are reviewed in the context of the category Per and the relation between certain end formulas and initial algebras for finite signatures is discussed. The point of the theory of algebraic semantics in Per is to provide a setting for thinking about algebraic types and algebraic operations in conjunction with logical types and polymorphic operations. Two specific examples are discussed and a general principle for combining algebraic and polymorphic operations is proposed.

This research was partially supported by the National Science Foundation.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

7. References

7.1 Collections

  1. M. Nivat and J. C. Reynolds, Eds., Algebraic Methods in Semantics, Cambridge Univ. Press, 1985.

    Google Scholar 

  2. Categories in Computer Science and Logic, J. W. Gray and A. Scedrov, Eds., Contemporary Mathematics ??, Amer. Math. Soc., Providence, R. I. 1989.

    Google Scholar 

  3. Logical Foundations of Functional Programming, G. Huet, Ed., Addison-Wesley, Reading, Mass. 1989.

    Google Scholar 

  4. Logic in Computer Science, Proceedings First Annual Symposium, Boston, MA, 1986, Computer Society Press, Washington, D. C.

    Google Scholar 

  5. Logic in Computer Science, Proceedings Second Annual Symposium, Ithaca, NY, 1987, Computer Society Press, Washington, D. C.

    Google Scholar 

  6. Logic in Computer Science, Proceedings Third Annual Symposium, Edinburgh, Scotland, 1988, Computer Society Press, Washington, D. C.

    Google Scholar 

  7. Semantics of Data Types, G. Kahn, D. B. MacQueen and G. Plotkin, Eds., Proceedings International Symposium, Sophia-Antipolis 1984, Lecture Notes in Computer Science 173, Springer-Verlag 1984.

    Google Scholar 

  8. Category Theory and Computer Programming, Proceedings, Tutorial and Workshop, Guildford, U.K., 1985, D. Pitt, S. Abramsky, A. Poigné, D. Rydeheard, Eds., Lecture Notes in Computer Science 240, Springer-Verlag, New York, 1985

    Google Scholar 

  9. Mathematical Foundations of Programming Language Semantics, M. Main, A Melton, M. Mislove and D. Schmidt, Eds., 3rd Workshop, New Orleans 1987, Lecture Notes in Computer Science 298, Springer-Verlag, New York, 1987.

    Google Scholar 

7.2 Articles and Books

  1. E. Bainbridge, P. Freyd, A. Scedrov, and P. Scott, Functorial polymorphism, in [LFFP], 248–260.

    Google Scholar 

  2. H. P. Barendregt, The Lambda Calculus: Its Syntax and Semantics, Studies in Logic and the Foundations of Mathematics 103, North-Holland, Amsterdam, second edition, 1984.

    Google Scholar 

  3. M. Barr, Models of sketches, Cahiers de Top. et Géom. Diff. 27 (1986), 93–107.

    Google Scholar 

  4. M. Barr and C. Wells, Toposes, Triples and Theories, Grundlehren der math. Wissenschaften 278, Springer-Verlag, New York, 1985.

    Google Scholar 

  5. A. Bastiani and C. Ehresmann, Categories of sketched structures, Cahiers de Top. et Géom. Diff. 13(1972), 103–214.

    Google Scholar 

  6. J. Benabou, Structures algébrique dans les catégories, Cahiers de Top. et Géom. Diff. 10(1968), 1–126.

    Google Scholar 

  7. S. Bloom and E. G. Wagner, Many-sorted theories and their algebras with some applications to data types, in [AMS], 133–168.

    Google Scholar 

  8. V. Breazu-Tannen, Combihing algebra and higher-order types, in [LICS 88], 82–90.

    Google Scholar 

  9. V. Breazu-Tannen and T. Coquand, Extensional Models for Polymorphism, Proceeding TAPSOFT '87 — CFLP, Pisa, 1987.

    Google Scholar 

  10. K.B. Bruce and G. Longo, A modest model of records, inheritance and bounded quantification, in [LICS 88], 38–50.

    Google Scholar 

  11. A. Carboni, P. J. Freyd and A. Scedrov, A categorical approach to realizability and polymorphic types, in [LNCS 298], 23–42.

    Google Scholar 

  12. L. Cardelli and P. Wegner, On understanding types, data abstraction and polymorphism, Computing Surveys 17(4)(1985), 471–522.

    Google Scholar 

  13. L. Coppey and C. Lair, Algébricité, monadicité, esquissabilité et non-algébricité, Diagrammes 12 (1984).

    Google Scholar 

  14. L. Coppey and C. Lair, Lecons de theorie des esquisses, Diagrammes 12, (1984).

    Google Scholar 

  15. G. Cousineau, The categorical abstract machine, in [LFFP], 27–45.

    Google Scholar 

  16. P.-L. Curien, Categorical Combinators, Sequential Algorithms and Functional Programming, Pitman Monographs in Computer Science, 1986.

    Google Scholar 

  17. H. Curry and R. Feys, Combinatory Logic, Vol I, North-Holland, Amsterdam, 1958.

    Google Scholar 

  18. E. Dubuc and R. Street, Dinatural transformations, in Reports of the Midwest Category Theory Seminar IV, Lecture Notes in Mathematics 127, Springer-Verlag, New York, 1970.

    Google Scholar 

  19. P. Dybjer, Category theory and programming language semantics: an overview, in [LNCS 240], 165–181.

    Google Scholar 

  20. A. C. Ehresmann, Esquisses et types des structures algebriques, Bul. Instit. Polit. Iasi, XIV, 1968.

    Google Scholar 

  21. H.-D. Ehrich and U. Lipeck, Algebraic domain equations, Theoretical Computer Science 27 (1983), 167–196.

    Google Scholar 

  22. H. Ehrig, H.-J. Kreowski, J. W. Thatcher, E. G. Wagner and J. B. Wright, Parameter passing in algebraic specification languages. Theoretical Computer Science 28(1984), 45–81.

    Google Scholar 

  23. H. Ehrig and B. Mahr, Fundamentals of Algebraic Specification 1, Springer-Verlag, New York, 1985.

    Google Scholar 

  24. S. Eilenberg and G. M. Kelly, A generalization of the functorial calculus, J. of Algebra 3 (1966), 366–375.

    Google Scholar 

  25. M. P. Fourman and S. Vickers, Theories as Categories, in [LNCS 240], 434–448.

    Google Scholar 

  26. P. J. Freyd, Abelian Categories, Harper and Row, New York, 1964.

    Google Scholar 

  27. P. J. Freyd, Algebra valued functors in general and tensor products in particular. Colloq. Math 14(1966), 89–106.

    Google Scholar 

  28. P.J. Freyd, Aspects of Topoi, Bull. Austral. Math. Soc. 7 (1972), 1–72.

    Google Scholar 

  29. P. J. Freyd, POLYNAT in PER, in [CCSL], to appear.

    Google Scholar 

  30. P. J. Freyd, J. Y. Girard, A. Scedrov, and P. J. Scott, Semantic Parametricity in polymorphic lambda calculus, in [LICS 88], 274–281.

    Google Scholar 

  31. P. Freyd and A. Scedrov, Some semantic aspects of polymorphic lambda calculus, in [LICS 87], 315–319.

    Google Scholar 

  32. J. Y. Girard, Une extension de l'interpretation de Gödel a l'analyse et son application a l'elimination des coupures dans l'analyse et la theorie des types, Proc. of the 2nd Scandinavian Logic Symp. J. E. Fenstad, Ed., North-Holland, Amsterdam, 1971, 63–92.

    Google Scholar 

  33. J. Y. Girard, Interprétation fonctionelle et élimination des coupures de l'arithmétique d'order supérieur. These d'Etat, Université Paris VII, 1972.

    Google Scholar 

  34. J. A. Goguen, Parameterized programming, IEEE Transactions on Software Engineering, Vol. SE-10, No.5, 1984, 528–543.

    Google Scholar 

  35. J. A. Goguen, J. W. Thatcher, E. G. Wagner and J. B. Wright, Initial algebra semantics and continuous algebras, Journal. A. C. M., 24 (1977), 68–95.

    Google Scholar 

  36. J. A. Goguen, J. W. Thatcher, and E. G. Wagner, An initial algebraic approach to the specification, correctness, and implementation of abstract data ty0pes, in: R. T. Yeh, Ed., Current Trends in Programming Mathodology, Vol IV, Prentice-Hall, Englewood Cliffs, NJ, 1978, 80–149.

    Google Scholar 

  37. J. W. Gray, The 2-adjointness of the fibred-category construction, Symposia Mathematica IV, Istituto Nazionale di Alta Matematica, Academic Press, New York, 1970, 457–492.

    Google Scholar 

  38. J. W. Gray, Formal Category Theory: Adjointness for 2-Categories, Lecture Notes in Mathematics 391, Springer Verlag, New York, 1974.

    Google Scholar 

  39. J. W. Gray, Categorical aspects of data-type constructors, Theoretical Computer Science, 50(1987), 103–135.

    Google Scholar 

  40. J W. Gray, A categorical treatment of polymorphic operations, in [LNCS 298], 2–22.

    Google Scholar 

  41. J W. Gray, The Category of Sketches as a model for Algebraic Semantics, in [CCSL], to appear.

    Google Scholar 

  42. J. R. Hindley and J. P. Seldin, Introduction to Combinators and λ-calculus, Cambridge University Press, 1986.

    Google Scholar 

  43. G. Huet, Cartesian closed categories and lambda-calculus, in [LFFP], 11–26.

    Google Scholar 

  44. G. Huet, A uniform approach to type theory, in [LFFP], 266–323.

    Google Scholar 

  45. J. M. E. Hyland, The effective topos, in The L.E.J. Brouwer Centenary Symposium, A. S. Troelstra and D. van Dalen, Eds., North-Holland, Amsterdam, 1982.

    Google Scholar 

  46. J. M. E. Hyland, P. T. Johnstone, A. M. Pitts, Tripos theory, Math. Proc. Cambridge Philos. Soc. 88 (1980), 205–232.

    Google Scholar 

  47. J. M. E. Hyland and A. M. Pitts, The Theory of Constructions: Categorical Semantics and Topos-theoretic Models, in [CCSL], to appear.

    Google Scholar 

  48. G. M. Kelly, Structures defined by finite limits in the enriched context, 1, Cahiers de Top. et Géom. Diff. 23(1982), 3–42.

    Google Scholar 

  49. G. M. Kelly, On the essentially-algebraic theory generated by a sketch. Bull. Australian Math. Soc. 26(1982), 45–56.

    Google Scholar 

  50. G. M. Kelly, Basic Concepts of Enriched Category Theory. London Math. Soc. Lecture Note Series 64, Cambridge Univ. Press. 1982.

    Google Scholar 

  51. G. M. Kelly and R. Street, Lecture Notes in Mathematics 420, Springer-Verlag, New York, 1974.

    Google Scholar 

  52. H. A. Klaeren, Algebraische Spezifikation, Springer-Verlag, New York, 1983.

    Google Scholar 

  53. B. Kutzler and F. Lichtenberger, Bibliography on Abstract Data Types, Informatik-Fachberichte, Springer-Verlag, New York, 1983.

    Google Scholar 

  54. C. Lair, Foncteurs d'omission de structures algebrique, Cahiers de Top. et Géom. Diff. 12 (1971), 447–486.

    Google Scholar 

  55. C. Lair, Etude Générale de la Catégorie des Esquisses, Esquisses Mathematiques 23, Paris 1975, 1–62.

    Google Scholar 

  56. C. Lair, Condition systaxique de triplabilité d'un foncteur algébrique esquissé. Diagrammes 1 (1979).

    Google Scholar 

  57. C. Lair, Trames et semantiques categoriques des systemes de trames, Diagrammes 18 (1987), CL1–CL47.

    Google Scholar 

  58. J. Lambek, A fixpoint theorem for complete categories, Math. Zeitschr. 103 (1968), 151–161.

    Google Scholar 

  59. J. Lambek, and P. J. Scott, Introduction to Higher Order Categorical Logic, Cambridge Univ. Press, 1986.

    Google Scholar 

  60. F. W. Lawvere, Functorial semantics of algebraic theories, Proc. Nat. Acad. Sci. 50 (1963), 869–872.

    Google Scholar 

  61. G. Longo and E. Moggi, Cartesian closed categories of enumerations for effective type structures (Part I and II), in [LNCS 173], 235–256.

    Google Scholar 

  62. G. Longo and E. Moggi, Constructive natural deduction and its ‘Modest’ interpretation, in Semantics of Natural and Computer Languages, J. Meseguer et al, Eds., M. I. T. Press, Cambridge, MA, 1989.

    Google Scholar 

  63. S. Mac Lane, Categories for the Working Mathematician, Springer Verlag, New York, 1972.

    Google Scholar 

  64. J. McCarthy, Lisp 1961.

    Google Scholar 

  65. D. C. McCarty, Realizability and recursive mathematics, Dissertation, Oxford Univ., 1984.

    Google Scholar 

  66. N. McCracken, An investigation of a programming language with a polymorphic type structure, Doctoral Dissertation, Syracuse University, 1979.

    Google Scholar 

  67. N. McCracken, A finitary retract model for the polymorphic lambda-calculus, Information and Control.

    Google Scholar 

  68. M. Makkai and G. E. Reyes, First-Order Categorical Logic, Lecture Notes in Mathematics, Springer-Verlag, 1977.

    Google Scholar 

  69. E. Manes, Algebraic Theories, Springer-Verlag, New York, 1976.

    Google Scholar 

  70. E. Manes and M. Arbib, Algebraic Approaches to Program Semantics, Springer-Verlag, New York, 1986.

    Google Scholar 

  71. J. Meseguer and J. A. Goguen, Initiality, induction, and computability, in [AMS], 458–542.

    Google Scholar 

  72. A. R. Meyer, What is a model of the lambda calculus? Information and Control 52 (1982), 87–122.

    Google Scholar 

  73. R. Milner, A theory of type polymorphism in programming, J. Comp. Syst. Sci. 17 (1978), 348–375.

    Google Scholar 

  74. J. C. Mitchell and P. Scott, Typed Lambda Models and Cartesian Closed Categories, in [CCSL], to appear.

    Google Scholar 

  75. F. J. Oles, Type algebras, functor categories and block structure, in [AMS], 543–576.

    Google Scholar 

  76. D. Pitt, Categories, in [LNCS 240], 6–15.

    Google Scholar 

  77. A. Poigné, i) Elements of Categorical Reasoning: Products and Coproducts and some other (Co-) Limits, ii) Cartesian Closure — Higher Types in Categories, iii) Algebra Categorically, iv) Category Theory and Logic, in [LNCS 240], 16–42, 58–75, 76–102, 103–142.

    Google Scholar 

  78. H. Reichel, Initial Computability, Algebraic Specifications, and Partial Algebras, Clarendon Press, Oxford, 1987.

    Google Scholar 

  79. J. C. Reynolds, Towards a theory of type structures, in Colloque sur la Programmation, Lecture Notes in Computer Science 19, Springer-Verlag 1974, 408–425.

    Google Scholar 

  80. J. C. Reynolds, Types, abstraction, and parametric polymorphism, IFIP 83, Paris.

    Google Scholar 

  81. J. C. Reynolds, Polymorphism is not set-theoretic, in [LNCS 173], 145–156.

    Google Scholar 

  82. J. C. Reynolds, Three approaches to type structure. In TYPSOFT advanced seminar on the role of semantics in software development, Springer-Verlag, New York, 1985.

    Google Scholar 

  83. J. C. Reynolds and G. Plotkin, On functors expressible in the polymorphic lambda calculus, in [LFFP], 118–140.

    Google Scholar 

  84. G. Richter, Kategorielle Algebra, Studien zur Algebra und ihren Anwendungen, Akademie Verlag, Berlin, 1979.

    Google Scholar 

  85. G. Rosolini, About modest sets, preprint, 1987.

    Google Scholar 

  86. G. Rosolini, Churchian numerals, Types mailbox, 1987.

    Google Scholar 

  87. D. Rydeheard, i) Functors and Natural Transformations, ii) Adjunctions, in [LNCS 240], 43–50, 51–57.

    Google Scholar 

  88. D. Schmidt, Denotational Semantics, a Methodology for Language Development, Allyn and Bacon, Boston, 1986.

    Google Scholar 

  89. D. S. Scott, Lambda calculus and recursion theory, Proc. Third Scandinavian Logic Symp., North-Holland, Amsterdam 1975, 154–193.

    Google Scholar 

  90. D. S. Scott, Data types as lattices, SIAM J. Comp. 5 (1976), 522–587.

    Google Scholar 

  91. D. S. Scott, Lambda Calculus: some models, some philosophy, in The Kleene Symposium, J. Barwise, H. J. Keisler, and K. Kumen, Eds., 1980, North-Holland Publishing Co., Amsterdam, 381–421.

    Google Scholar 

  92. D. S. Scott, Relating theories of the lambda calculus, in To H. B. Curry, essays on combinatory logic, lambda calculus and formalism, J. P. Seldin and J. R. Hindley, Eds, 1980, Academic Press, New York, 403–450.

    Google Scholar 

  93. D. S. Scott, Lectures on a Mathematical Theory of Computation, Technical Monograph PR6-19, Oxford University, 1981.

    Google Scholar 

  94. D. S. Scott, Domains for denotational semantics, ICALP 82, Lecture Notes in Computer Science 140, Springer-Verlag, New York, 1982.

    Google Scholar 

  95. Seely, R. A. G., Locally cartesian closed categories and type theory, Math. Proc. Camb. Phil. Soc. 95 (1984), 33–48.

    Google Scholar 

  96. R. A. G. Seely, Categorical semantics for higher order polymorphic lambda calculus. J. Symbolic Logic 52 (1987), 969–989.

    Google Scholar 

  97. R. A. G. Seely, Linear Logic, *-Autonomous Categories and Cofree Coalgebras, in [CCSL], to appear.

    Google Scholar 

  98. C. Smith, Dinatural Transformations and Polymorphic Operators, Thesis, Univ. of Ill, Urbana, IL, 1988.

    Google Scholar 

  99. M. Smyth, and G. Plotkin, The category-theoretic solution of recursive domain equations, SIAM Journal of Computing 11 (1982), 761–783.

    Google Scholar 

  100. J. Stoy, Denotational Semantics, The Scott-Strachey Approach to Programming Language Theory, MIT Press, 1977.

    Google Scholar 

  101. J. W. Thatcher, E. G. Wagner and J. B. Wright, Data type specifications: Parameterizations and the power of specification techniques, A. C. M Trans. on Programming Languages and Systems, 4(1982), 711–732.

    Google Scholar 

  102. E. G. Wagner, Categories, data types and imperative languages, in [LNCS 240], 143–162.

    Google Scholar 

  103. E. G. Wagner, S. L. Bloom and J. W. Thatcher, Why algebraic theories?, in [AMS], 607–634.

    Google Scholar 

  104. A generalization of the concept of sketch, preprint 1988.

    Google Scholar 

  105. C. Wells and M. Barr, The formal description of data types using sketches, in [LNCS 298], 490–527.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

H. Ehrig H. Herrlich H. -J. Kreowski G. Preuß

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gray, J.W. (1989). The integration of logical and algebraic types. In: Ehrig, H., Herrlich, H., Kreowski, H.J., Preuß, G. (eds) Categorical Methods in Computer Science With Aspects from Topology. Lecture Notes in Computer Science, vol 393. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-51722-7_2

Download citation

  • DOI: https://doi.org/10.1007/3-540-51722-7_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51722-1

  • Online ISBN: 978-3-540-46787-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics