Polymorphic higher-order recursive path orderings

被引:27
|
作者
Jouannaud, Jean-Pierre [1 ]
Rubio, Albert
机构
[1] Ecole Polytech, LIX, F-91400 Orsay, France
[2] Tech Univ Catalonia, Barcelona, Spain
关键词
languages; theory; verification; automated termination prover tool; Godel's polymorphic recursor; higher-order rewriting; termination orderings; typed lambda calculus;
D O I
10.1145/1206035.1206037
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
This article extends the termination proof techniques based on reduction orderings to a higher-order setting, by defining a family of recursive path orderings for terms of a typed lambda-calculus generated by a signature of polymorphic higher-order function symbols. These relations can be generated from two given well-founded orderings, on the function symbols and on the type constructors. The obtained orderings on terms are well founded, monotonic, stable under substitution and include beta-reductions. They can be used to prove the strong normalization property of higher-order calculi in which constants can be defined by higher-order rewrite rules using first-order pattern matching. 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. Many nontrivial examples are given that exemplify the expressive power of these orderings. All have been checked by our implementation. This article is an extended and improved version of Jouannaud and Rubio [1999]. Polymorphic algebras have been made more expressive than in our previous framework. The intuitive notion of a polymorphic higher-order ordering has now been made precise. The higher-order recursive path ordering itself has been made much more powerful by replacing the congruence on types used there by an ordering on types satisfying some abstract properties. Besides, using a restriction of Dershowitz's recursive path ordering for comparing types, we can integrate both orderings into a single one operating uniformly on both terms and types.
引用
收藏
页数:48
相关论文
共 50 条
  • [1] Rewrite orderings for higher-order terms in η-long β-normal form and the recursive path ordering
    Jouannaud, JP
    Rubio, A
    [J]. THEORETICAL COMPUTER SCIENCE, 1998, 208 (1-2) : 33 - 58
  • [2] Certified higher-order recursive path ordering
    Koprowski, Adam
    [J]. TERM REWRITING AND APPLICATIONS, PROCEEDINGS, 2006, 4098 : 227 - 241
  • [3] A Lambda-Free Higher-Order Recursive Path Order
    Blanchette, Jasmin Christian
    Waldmann, Uwe
    Wand, Daniel
    [J]. FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATION STRUCTURES (FOSSACS 2017), 2017, 10203 : 461 - 479
  • [4] Coq formalization of the higher-order recursive path ordering
    Koprowski, Adam
    [J]. APPLICABLE ALGEBRA IN ENGINEERING COMMUNICATION AND COMPUTING, 2009, 20 (5-6) : 379 - 425
  • [5] Coq formalization of the higher-order recursive path ordering
    Adam Koprowski
    [J]. Applicable Algebra in Engineering, Communication and Computing, 2009, 20 : 379 - 425
  • [6] Inferring cost equations for recursive, polymorphic and higher-order functional programs
    Vasconcelos, PB
    Hammond, K
    [J]. IMPLEMENTATION OF FUNCTIONAL LANGUAGES, 2004, 3145 : 86 - 101
  • [7] Higher-order orderings for normal rewriting
    Jouannaud, Jean-Pierre
    Rubio, Albert
    [J]. TERM REWRITING AND APPLICATIONS, PROCEEDINGS, 2006, 4098 : 387 - 399
  • [8] The recursive path and polynomial ordering for first-order and higher-order terms
    Bofill, Miquel
    Borralleras, Cristina
    Rodriguez-Carbonell, Enric
    Rubio, Albert
    [J]. JOURNAL OF LOGIC AND COMPUTATION, 2013, 23 (01) : 263 - 305
  • [9] ON THE COMPLEXITY OF RECURSIVE PATH ORDERINGS
    SNYDER, W
    [J]. INFORMATION PROCESSING LETTERS, 1993, 46 (05) : 257 - 262
  • [10] Recursive equations in higher-order process calculi
    Ying, MS
    Wirsing, M
    [J]. THEORETICAL COMPUTER SCIENCE, 2001, 266 (1-2) : 839 - 852