Skip to main content

Partial intersection type assignment in applicative term rewriting systems

  • Conference paper
  • First Online:
Typed Lambda Calculi and Applications (TLCA 1993)

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

Included in the following conference series:

Abstract

This paper introduces a notion of partial type assignment on applicative term rewriting systems that is based on a combination of an essential intersection type assignment system, and the type assignment system as defined for ML [16], both extensions of Curry's type assignment system [11]. Terms and rewrite rules will be written as trees, and type assignment will consists of assigning intersection types function symbols, and specifying the way in which types can be assigned to nodes and edges between nodes. The only constraints on this system are local: they are imposed by the relation between the type assigned to a node and those assigned to its incoming and out-going edges. In general, given an arbitrary typeablc applicative term rewriting system, the subject reduction property does not hold. We will formulate a sufficient but undecidable condition typeable rewrite rules should satisfy in order to obtain this property.

Partially supported by the Esprit Basic Research Action 3074 “Semagraph” and the Netherlands Organisation for the advancement of pure research (N.W.O.).

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. van Bakel. Principal type schemes for the Strict Type Assignment System. Technical Report 91-6, Department of Computer Science, University of Nijmegen, 1991.

    Google Scholar 

  2. S. van Bakel. Complete restrictions of the Intersection Type Discipline. Theoretical Computer Science, 102:135–163, 1992.

    Google Scholar 

  3. S. van Bakel. Partial Intersection Type Assignment of Rank 2 in Applicative Term Rewriting Systems. Technical Report 92-03, Department of Computer Science, University of Nijmegen, 1992.

    Google Scholar 

  4. S. van Bakel, S. Smetsers, and S. Brock. Partial Type Assignment in Left Linear Applicative Term Rewriting Systems. In J.-C. Raoult, editor, Proceedings of CAAP '92. 17th Colloquim on Trees in Algebra and Programming, Rennes, France, volume 581 of Lecture Notes in Computer Science, pages 300–321. Springer-Verlag, 1992.

    Google Scholar 

  5. H. Barendregt. The lambda calculus: its syntax and semantics. North-Holland, Amsterdam, revised edition, 1984.

    Google Scholar 

  6. H. Barendregt, M. Coppo, and M. Dezani-Ciancaglini. A filter lambda model and the completeness of type assignment. The Journal of Symbolic Logic, 48(4):931–940,1983.

    Google Scholar 

  7. H.P. Barendregt, M.C.J.D. van Eekelen, J.R.W. Glauert, J.R. Kennaway, M.J. Plasmeijer, and M.R. Sleep. Term graph rewriting. In Proceedings of PARLE, Parallel Architectures and Languages Europe, Eindhoven, The Netherlands, volume 259-II of Lecture Notes in Computer Science, pages 141–158. Springer-Verlag, 1987.

    Google Scholar 

  8. T. Brus, M.C.J.D. van Eekelen, M.O. van Leer, and M.J. Plasmeijer. Clean — A Language for Functional Graph Rewriting. In Proceedings of the Third International Conference on Functional Programming Languages and Computer Architecture, Portland, Oregon, USA, volume 274 of Lecture Notes in Computer Science, pages 364–368. Springer-Verlag, 1987.

    Google Scholar 

  9. M. Coppo and M. Dezani-Ciancaglini. An Extension of the Basic Functionality Theory for the λ-Calculus. Notre Dame, Journal of Formal Logic, 21(4): 685–693,1980.

    Google Scholar 

  10. M. Coppo, M. Dezani-Ciancaglini, and B. Venneri. Principal type schemes and λ-calculus semantics. In J. R. Hindley and J. P. Seldin, editors, To H. B. Curry, Essays in combinatory logic, lambda-calculus and formalism, pages 535–560. Academic press, New York, 1980.

    Google Scholar 

  11. H.B. Curry and R. Feys. Combinatory Logic, volume 1. North-Holland, Amsterdam, 1958.

    Google Scholar 

  12. N. Dershowitz and J.P. Jouannaud. Rewrite systems. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, chapter 6, pages 245–320. North-Holland, 1990.

    Google Scholar 

  13. M. Dezani-Ciancaglini and J.R. Hindley. Intersection types for combinatory logic. Theoretical Computer Science, 100:303–324, 1992.

    Google Scholar 

  14. K. Futatsugi, J. Goguen, J.P. Jouannaud, and J. Meseguer. Principles of OBJ2. In Proceedings 12th ACM Symposium on Principles of Programming Languages, pages 52–66, 1985.

    Google Scholar 

  15. J.W. Klop. Term Rewriting Systems. Report CS-R9073, Centre for Mathematics and Computer Science, Amsterdam, 1990.

    Google Scholar 

  16. R. Milner. A theory of type polymorphism in programming. Journal of Computer and System Sciences, 17:348–375, 1978.

    Google Scholar 

  17. E.G.J.M.H. Nöcker, J.E.W. Smetsers, M.C.J.D. van Eekelen, and M.J. Plasmeijer. Concurrent Clean. In Proceedings of PARLE '91, Parallel Architectures and Languages Europe, Eindhoven, The Netherlands, volume 506-II of Lecture Notes in Computer Science, pages 202–219. Springer-Verlag, 1991.

    Google Scholar 

  18. S. Peyton Jones and J. Salkild. The spineless tagless G-machine. In Functional Programming Languages and Computer Architecture, pages 184–201. ACM press, 1989.

    Google Scholar 

  19. F. Pfenning. Partial Polymorphic Type Inference and Higher-Order Unification. In Proceedings of the 1988 conference on LISP and Functional Programming Languages, volume 201 of Lecture Notes in Computer Science, pages 153–163. Springer-Verlag, 1988.

    Google Scholar 

  20. B.C. Pierce. Programming with Intersection Types and Bounded Polymorphism. PhD thesis, Carnegie Mellon University, School of Computer Science, Pitssburgh, 1991. CMU-CS-91-205.

    Google Scholar 

  21. S. Ronchi della Rocca and B. Venneri. Principal type schemes for an extended type theory. Theoretical Computer Science, 28:151–169, 1984.

    Google Scholar 

  22. D.A.Turner. Miranda: A non-strict functional language with polymorphic types. In Proceedings of the conference on Functional Programming Languages and Computer Architecture, volume 201 of Lecture Notes in Computer Science, pages 1–16. Springer-Verlag, 1985.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Marc Bezem Jan Friso Groote

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

van Bakel, S. (1993). Partial intersection type assignment in applicative term rewriting systems. In: Bezem, M., Groote, J.F. (eds) Typed Lambda Calculi and Applications. TLCA 1993. Lecture Notes in Computer Science, vol 664. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0037096

Download citation

  • DOI: https://doi.org/10.1007/BFb0037096

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56517-8

  • Online ISBN: 978-3-540-47586-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics