Results 1 - 10
of
20
Termination of Term Rewriting Using Dependency Pairs
- Comput. Sci
, 2000
"... We present techniques to prove termination and innermost termination of term rewriting systems automatically. In contrast to previous approaches, we do not compare left- and right-hand sides of rewrite rules, but introduce the notion of dependency pairs to compare left-hand sides with special subter ..."
Abstract
-
Cited by 195 (49 self)
- Add to MetaCart
We present techniques to prove termination and innermost termination of term rewriting systems automatically. In contrast to previous approaches, we do not compare left- and right-hand sides of rewrite rules, but introduce the notion of dependency pairs to compare left-hand sides with special subterms of the right-hand sides. This results in a technique which allows to apply existing methods for automated termination proofs to term rewriting systems where they failed up to now. In particular, there are numerous term rewriting systems where a direct termination proof with simplification orderings is not possible, but in combination with our technique, well-known simplification orderings (such as the recursive path ordering, polynomial orderings, or the Knuth-Bendix ordering) can now be used to prove termination automatically. Unlike previous methods, our technique for proving innermost termination automatically can also be applied to prove innermost termination of term rewriting systems that are not terminating. Moreover, as innermost termination implies termination for certain classes of term rewriting systems, this technique can also be used for termination proofs of such systems.
Automated Termination Proofs with AProVE
- In RTA’2004: Rewriting Techniques and Applications, volume 3091 of LNCS
, 2004
"... We describe the system AProVE, an automated prover to verify (innermost) termination of term rewrite systems (TRSs). For this system, we have developed and implemented effcient algorithms based on classical simplification orders, dependency pairs, and the size-change principle. In particular, it con ..."
Abstract
-
Cited by 47 (6 self)
- Add to MetaCart
We describe the system AProVE, an automated prover to verify (innermost) termination of term rewrite systems (TRSs). For this system, we have developed and implemented effcient algorithms based on classical simplification orders, dependency pairs, and the size-change principle. In particular, it contains many new improvements of the dependency pair approach that make automated termination proving more powerful and effcient. In AProVE, termination proofs can be performed with a user-friendly graphical interface and the system is currently among the most powerful termination provers available.
Termination of Nested and Mutually Recursive Algorithms
, 1996
"... This paper deals with automated termination analysis for functional programs. Previously developed methods for automated termination proofs of functional programs often fail for algorithms with nested recursion and they cannot handle algorithms with mutual recursion. We show that termination proofs ..."
Abstract
-
Cited by 38 (9 self)
- Add to MetaCart
This paper deals with automated termination analysis for functional programs. Previously developed methods for automated termination proofs of functional programs often fail for algorithms with nested recursion and they cannot handle algorithms with mutual recursion. We show that termination proofs for nested and mutually recursive algorithms can be performed without having to prove the correctness of the algorithms simultaneously. Using this result, nested and mutually recursive algorithms do no longer constitute a special problem and the existing methods for automated termination analysis can be extended to nested and mutual recursion in a straightforward way. We give some examples of algorithms whose termination can now be proved automatically (including well-known challenge problems such as McCarthy's f_91 function).
Complete Monotonic Semantic Path Orderings
- In Proc. 17th CADE, LNAI 1831
, 2000
"... Although theoretically it is very powerful, the semantic path ordering (SPO) is not so useful in practice, since its monotonicity has to be proved by hand for each concrete term rewrite system (TRS). In this paper we present a monotonic variation of SPO, called MSPO. It characterizes termination ..."
Abstract
-
Cited by 32 (8 self)
- Add to MetaCart
Although theoretically it is very powerful, the semantic path ordering (SPO) is not so useful in practice, since its monotonicity has to be proved by hand for each concrete term rewrite system (TRS). In this paper we present a monotonic variation of SPO, called MSPO. It characterizes termination, i.e., a TRS is terminating if and only if its rules are included in some MSPO. Hence MSPO is a complete termination method. On the practical side, it can be easily automated using as ingredients standard interpretations and general-purpose orderings like RPO. This is shown to be a sufficiently powerful way to handle several non-trivial examples and to obtain methods like dummy elimination or dependency pairs as particular cases. Finally, we obtain some positive modularity results for termination based on MSPO. 1 Introduction Rewrite systems are sets of rules (directed equations) used to compute by repeatedly replacing parts of a given formula with equal ones until the simplest po...
Automatically Proving Termination Where Simplification Orderings Fail
, 1997
"... To prove termination of term rewriting systems (TRSs), several methods have been developed to synthesize suitable well-founded orderings automatically. However, virtually all orderings that are amenable to automation are so-called simplification orderings. Unfortunately, there exist numerous interes ..."
Abstract
-
Cited by 31 (9 self)
- Add to MetaCart
To prove termination of term rewriting systems (TRSs), several methods have been developed to synthesize suitable well-founded orderings automatically. However, virtually all orderings that are amenable to automation are so-called simplification orderings. Unfortunately, there exist numerous interesting and relevant TRSs that cannot be oriented by orderings of this restricted class and therefore their termination cannot be proved automatically with the existing techniques. In this paper we present a new automatic approach which allows to apply the standard techniques for automated termination proofs to those TRSs where these techniques failed up to now. For that purpose we have developed a procedure which, given a TRS, generates a set of inequalities (constraints) automatically. If there exists a well-founded ordering satisfying these constraints, then the TRS is terminating. It turns out that for many TRSs where a direct application of standard techniques fails, these standard techniq...
Termination analysis for functional programs using term orderings
- IN PROCEEDINGS OF THE SECOND INTERNATIONAL STATIC ANALYSIS SYMPOSIUM, LNCS 983
, 1995
"... To prove the termination of a functional program there has to be a well-founded ordering such that the arguments in each recursive call are smaller than the corresponding inputs. In this paper we present a procedure for automated termination proofs of functional programs. In contrast to previously p ..."
Abstract
-
Cited by 31 (12 self)
- Add to MetaCart
To prove the termination of a functional program there has to be a well-founded ordering such that the arguments in each recursive call are smaller than the corresponding inputs. In this paper we present a procedure for automated termination proofs of functional programs. In contrast to previously presented methods a suited well-founded ordering does not have to be fixed in advance by the user, but can be synthesized automatically. For that purpose we use approaches developed in the area of term rewriting systems for the automated generation of suited well-founded term orderings. But unfortunately term orderings cannot be directly used for termination proofs of functional programs which call other algorithms in the arguments of their recursive calls. The reason is that while for the termination of term rewriting systems orderings between terms are needed, for functional programs we need orderings between objects of algebraic data types. Our method solves this problem and enables term orderings to be used for termination proofs of functional programs.
Proving Innermost Normalisation Automatically
, 1997
"... We present a technique to prove innermost normalisation of term rewriting systems (TRSs) automatically. In contrast to previous methods, our technique is able to prove innermost normalisation of TRSs that are not terminating. Our technique can also be used for termination proofs of all TRSs where in ..."
Abstract
-
Cited by 27 (11 self)
- Add to MetaCart
We present a technique to prove innermost normalisation of term rewriting systems (TRSs) automatically. In contrast to previous methods, our technique is able to prove innermost normalisation of TRSs that are not terminating. Our technique can also be used for termination proofs of all TRSs where innermost normalisation implies termination, such as non-overlapping TRSs or locally confluent overlay systems. In this way, termination of many (also non-simply terminating) TRSs can be verified automatically. 1. Introduction Innermost rewriting, i.e. rewriting where only innermost redexes are contracted, can be used to model call-by-value computation semantics. For that reason, there has been an increasing interest in innermost normalisation (also called innermost termination), i.e. in proving that the length of every innermost reduction is finite. Techniques for proving innermost normalisation can for example be utilized for termination proofs of functional programs (modelled by TRSs) or o...
The Size-Change Principle and Dependency Pairs for Termination of Term Rewriting
- APPEARED IN APPLICABLE ALGEBRA IN ENGINEERING, COMMUNICATION AND COMPUTING, 16(4):229-270, 2005.
, 2005
"... In [24], a new size-change principle was proposed to verify termination of functional programs automatically. We extend this principle in order to prove termination and innermost termination of arbitrary term rewrite systems (TRSs). Moreover, we compare this approach with existing techniques for ter ..."
Abstract
-
Cited by 23 (5 self)
- Add to MetaCart
In [24], a new size-change principle was proposed to verify termination of functional programs automatically. We extend this principle in order to prove termination and innermost termination of arbitrary term rewrite systems (TRSs). Moreover, we compare this approach with existing techniques for termination analysis of TRSs (such as recursive path orders or dependency pairs). It turns out that the size-change principle on its own fails for many examples that can be handled by standard techniques for rewriting, but there are also TRSs where it succeeds whereas existing rewriting techniques fail. Moreover, we also compare the complexity of the respective methods. To this end, we develop the first complexity analysis for the dependency pair approach. While the size-change principle is PSPACE-complete, we prove that the dependency pair approach (in combination with classical path orders) is only NP-complete. To benefit from their respective advantages, we show how to combine the size-change principle with classical orders and with dependency pairs. In this way, we obtain a new approach for automated termination proofs of TRSs which is more powerful than previous approaches. We also show that the combination with dependency pairs does not increase the complexity of the size-change principle, i.e., the combined approach is still PSPACE-complete.
Improved Modular Termination Proofs Using Dependency Pairs
- In Proc. IJCAR ’04, LNAI 3097
, 2004
"... The dependency pair approach is one of the most powerful techniques for automated (innermost) termination proofs of term rewrite systems (TRSs). For any TRS, it generates inequality constraints that have to be satisfied by well-founded orders. However, proving innermost termination is considerab ..."
Abstract
-
Cited by 21 (8 self)
- Add to MetaCart
The dependency pair approach is one of the most powerful techniques for automated (innermost) termination proofs of term rewrite systems (TRSs). For any TRS, it generates inequality constraints that have to be satisfied by well-founded orders. However, proving innermost termination is considerably easier than termination, since the constraints for innermost termination are a subset of those for termination.
Modularity of Termination Using Dependency Pairs
- Proc. 9th RTA
, 1997
"... . The framework of dependency pairs allows automated termination and innermost termination proofs for many TRSs where such proofs were not possible before. In this paper we present a refinement of this framework in order to prove termination in a modular way. Our modularity results significantly inc ..."
Abstract
-
Cited by 18 (10 self)
- Add to MetaCart
. The framework of dependency pairs allows automated termination and innermost termination proofs for many TRSs where such proofs were not possible before. In this paper we present a refinement of this framework in order to prove termination in a modular way. Our modularity results significantly increase the class of term rewriting systems where termination resp. innermost termination can be proved automatically. Moreover, the modular approach to dependency pairs yields new modularity criteria which extend previous results in this area considerably. In particular, existing results for modularity of innermost termination can easily be obtained as direct consequences of our new criteria. 1 Introduction Termination is one of the most important properties of a term rewriting system (TRS). While in general this problem is undecidable [HL78], several methods for proving termination have been developed (for surveys see e.g. [Der87, Ste95b, DH95]). However, most methods that are amenable to a...

