The higher-order recursive path ordering

This paper extends the termination proof techniques based on reduction orderings to a higher-order setting, by adapting the recursive path ordering definition to terms of a typed lambda-calculus generated by a signature of polymorphic higher-order function symbols. The obtained ordering is well-founded, compatible with p-reductions and with polymorphic typing, monotonic with respect to the function symbols, and stable under substitution. It can therefore be used to prove the strong normalization property of higher-order calculi in which constants can be defined by higher-order rewrite rules. For example, the polymorphic version of Godel's recursor for the natural numbers is easily oriented. And indeed, our ordering is polymorphic, in the sense that a single comparison allows to prove the termination property of all monomorphic instances of a polymorphic rewrite rule. Several other non-trivial examples are given which exemplify the expressive power of the ordering.

[1]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[2]  Frank Pfenning,et al.  Elf: a language for logic definition and verified metaprogramming , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[3]  Birgit Reinert,et al.  Relating Rewriting Techniques on Monoids and Rings: Congruences on Monoids and Ideals in Monoid Rings , 1998, Theor. Comput. Sci..

[4]  Lawrence C. Paulson,et al.  Isabelle: The Next 700 Theorem Provers , 2000, ArXiv.

[5]  Albert Rubio,et al.  Rewrite Orderings for Higher-Order Terms in eta-Long beta-Normal Form and Recursive Path Ordering , 1998, Theor. Comput. Sci..

[6]  Jean-Pierre Jouannaud,et al.  Abstract Data Type Systems , 1997, Theor. Comput. Sci..

[7]  G. Takeuti,et al.  On the theory of quasi-ordinal diagrams , 1985 .

[8]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[9]  Olav Lysne,et al.  A Termination Ordering for Higher Order Rewrite System , 1995, RTA.

[10]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[11]  Amy P. Felty,et al.  The Coq proof assistant user's guide : version 5.6 , 1990 .

[12]  Nachum Dershowitz Orderings for Term-Rewriting Systems , 1979, FOCS.

[13]  Tobias Nipkow,et al.  Higher-Order Rewrite Systems and Their Confluence , 1998, Theor. Comput. Sci..

[14]  Carl A. Gunter,et al.  In handbook of theoretical computer science , 1990 .

[15]  Joachim Steinbach,et al.  Termination of Combined (Rewrite and lambda-Calculus) Systems , 1992, CTRS.

[16]  Jean-Pierre Jouannaud,et al.  The Calculus of algebraic Constructions , 1999, RTA.

[17]  Albert Rubiozy A Recursive Path Ordering for Higher-order Terms in -long -normal Form ? , 1996 .

[18]  Samson Abramsky,et al.  Handbook of logic in computer science. , 1992 .

[19]  Thierry Coquand Program Construction in Intuitionistic Type Theory (Abstract) , 1995, MPC.

[20]  Nachum Dershowitz,et al.  Orderings for term-rewriting systems , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[21]  Albert Rubio,et al.  A Recursive Path Ordering for Higher-Order Terms in eta-Long beta-Normal Form , 1996, RTA.

[22]  Helmut Schwichtenberg,et al.  Strict Functionals for Termination Proofs , 1995, TLCA.