Abstract
This paper studies termination properties of rewrite systems that are typeable using intersection types. It introduces a notion of partial type assignment on Curryfied Term Rewrite Systems, that consists of assigning intersection types to function symbols, and specifying the way in which types can be assigned to nodes and edges between nodes in the tree representation of terms. Using a more liberal approach to recursion, a general scheme for recursive definitions is presented, that generalizes primitive recursion, but has full Turing-machine computational power. It will be proved that, for all systems that satisfy this scheme, every typeable term is strongly normalizable.
Supported by the Netherlands Organisation for the advancement of pure research (N.W.O.).
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
S. van Bakel. Complete restrictions of the Intersection Type Discipline. Theoretical Computer Science, 102:135–163, 1992.
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.
S. van Bakel. Essential Intersection Type Assignment. In R.K. Shyamasunda, editor, Proceedings of FST&TCS '93. 13 th Conference on Foundations of Software Technology and Theoretical Computer Science, LNCS 761, pages 13–23, Bombay, India, 1993.
S. van Bakel. Partial Intersection Type Assignment in Applicative Term Rewriting Systems. In M. Bezem and J.F. Groote, editors, Proceedings of TLCA '93. International Conference on Typed Lambda Calculi and Applications, LNCS 664, pages 29–44, Utrecht, the Netherlands, 1993.
S. van Bakel. Principal type schemes for the Strict Type Assignment System. Logic and Computation, 3(6):643–670, 1993.
F. Barbanera and M. Fernández. Combining first and higher order rewrite systems with type assignment systems. In M. Bezem and J.F. Groote, editors, Proceedings of TLCA '93. International Conference on Typed Lambda Calculi and Applications, LNCS 664, pages 60–74, Utrecht, the Netherlands, 1993.
F. Barbanera and M. Fernández. Modularity of Termination and Confluence in Combinations of Rewrite Systems with λ ω. In A. Lingas, R. Karlsson, and S. Carlsson, editors, Proceedings of ICALP '93. 20 th International Colloquium on Automata, Languages and Programming, LNCS 700, pages 657–668, Lund, Sweden, 1993.
H. Barendregt. The Lambda Calculus: its Syntax and Semantics. North-Holland, Amsterdam, revised edition, 1984.
H. Barendregt, M. Coppo, and M. Dezani-Ciancaglini. A filter lambda model and the completeness of type assignment. Journal of Symbolic Logic, 48(4):931–940, 1983.
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.
H.B. Curry and R. Feys. Combinatory Logic, volume 1. North-Holland, Amsterdam, 1958.
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.
M. Dezani-Ciancaglini and J.R. Hindley. Intersection types for combinatory logic. Theoretical Computer Science, 100:303–324, 1992.
K. Futatsugi, J. Goguen, J.P. Jouannaud, and J. Meseguer. Principles of OBJ2. In Proceedings 12 th ACM Symposium on Principles of Programming Languages, pages 52–66, 1985.
J.Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types. Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1989.
J.R. Hindley. The principal type scheme of an object in combinatory logic. Transactions of the American Mathematical Society, 146:29–60, 1969.
J.P. Jouannaud and M. Okada. Executable higher-order algebraic specification languages. In Proceedings of the Sixth Annual Symposium on Logic in Computer Science, pages 350–361, 1991.
J.W. Klop. Term Rewriting Systems. In S. Abramsky, Dov.M. Gabbay, and T.S.E. Maibaum, editors, Handbook of Logic in Computer Science, volume 2, chapter 1, pages 1–116. Clarendon Press, 1992.
R. Milner. A theory of type polymorphism in programming. Journal of Computer and System Sciences, 17:348–375, 1978.
F. Pfenning. Partial Polymorphic Type Inference and Higher-Order Unification. In Proceedings of the 1988 ACM conference on LISP and Functional Programming Languages, pages 153–163, 1988.
S. Ronchi della Rocca and B. Venneri. Principal type schemes for an extended type theory. Theoretical Computer Science, 28:151–169, 1984.
W.W. Tait. Intensional interpretation of functional of finite types. Journal of Symbolic Logic, 32, 1967.
D.A. Turner. Miranda: A non-strict functional language with polymorphic types. In Proceedings of the conference on Functional Programming Languages and Computer Architecture, LNCS 201, pages 1–16.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
van Bakel, S., Fernández, M. (1994). Strong normalization of typeable rewrite systems. In: Heering, J., Meinke, K., Möller, B., Nipkow, T. (eds) Higher-Order Algebra, Logic, and Term Rewriting. HOA 1993. Lecture Notes in Computer Science, vol 816. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58233-9_2
Download citation
DOI: https://doi.org/10.1007/3-540-58233-9_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58233-5
Online ISBN: 978-3-540-48579-7
eBook Packages: Springer Book Archive