Applicable Algebra in Engineering, Communication and Computing manuscript No. (will be inserted by the editor) Salvador Lucas On the relative power of polynomials with real, rational, and integer coefficients in proofs of termination of rewriting Received: date / Revised: date Abstract In the seventies, Manna and Ness, Lankford, and Dershowitz pionneered the use of polynomial interpretations with integer and real coefficients in proofs of termination of rewriting. More than twenty five years after these works were published, however, the absence of true examples in the literature has given rise to some doubts about the possible benefits of using polynomials with real or rational coefficients. In this paper we prove that there are, in fact, rewriting systems that can be proved polynomially terminating by using polynomial interpretations with (algebraic) real coefficients; however, the proof cannot be achieved if polynomials only contain rational coefficients. We prove a similar statement with respect to the use of rational coefficients versus integer coefficients. Keywords Polynomial orderings · program analysis · term rewriting · termination 1 Introduction The development of termination analysis for Term Rewriting Systems (TRSs [40]) has recently undergone remarkable growth, leading to the birth of a new generation of promising methods, tools, and technology transfer, with many real and potential applications. Termination of rewriting is undecidable (even for TRSs containing only one rule [15]) and a great amount of research has been devoted to developing methods and heuristics to achieve proofs of Salvador Lucas DSIC, Universidad Politécnica de Valencia Camino de Vera s/n, E-46022 Valencia, Spain Tel.: +34 96 387 7007 (ext. 73531) Fax: +34 96 387 7359 E-mail: [email protected] 2 Salvador Lucas termination in restricted cases. Polynomial interpretations and their corresponding reduction orderings (first suggested by Iturriaga [26] and Manna and Ness [31], and further developed by Lankford [28]) are well-suited for achieving automatic or semiautomatic proofs of termination of rewriting [8, 13, 19, 28, 37]. In Lankford’s approach, k-ary symbols f are interpreted as polynomials [f ] with non-negative integer coefficients (with k variables usually ranging in the set of positive integers). Terms t are inductively interpreted as polynomials [t] whose variables are those occurring in t. Comparisons between terms t and s are achieved by comparing the value of the polynomials [t] and [s] for all possible (simultaneous) valuations of variables in t and s. The use of the set of natural numbers N as the interpretation domain guarantees the necessary well-foundedness of the induced ordering on terms. In order to prove termination of a TRS R, we have to verify that [l] is bigger than [r] for each rewrite rule l → r of R. As noticed by Lankford [28], checking polynomial termination of a TRS (w.r.t. a given polynomial interpretation) can be translated into a constraint solving problem where the constraints are finite conjunctions of universally quantified formulas P (x1 , . . . , xn ) > 0 for appropriate polynomials P (see also [13]). In Lankford’s approach, these are treated as Diophantine inequalities whose satisfaction is, in general, undecidable [34]. Polynomials with real coefficients were proposed by Dershowitz [17] as an alternative to polynomials over the naturals in proofs of termination of rewriting. Since the set of real numbers R furnished with the usual ordering >R is not well-founded, a subterm property (i.e., [f ](x1 , . . . , xi , . . . , xk ) >R xi for all k-ary symbols f , arguments 1 ≤ i ≤ k, and x1 , . . . , xk ∈ R) is explicitly required to ensure well-foundedness. As in Lankford’s approach, we get a constraint-solving problem, but which is now in the first order theory of the reals. Dershowitz noticed that, according to Tarski [39], the satisfaction of such polynomial constraints then becomes decidable1 . In contrast to Lankford’s approach, polynomial termination of TRSs is decidable for a given polynomial interpretation. The termination problem can be encoded as an instance of the general decision problem for the first-order theory of the reals investigated by Tarski. The complexity of his decision algorithm, however, is not elementary recursive; Collins [14] gave a decision algorithm whose worstcase running time is doubly exponential in the number of variables of the involved polynomials. A recent work by Basu, Pollack and Roy [2] presents a decision algorithm which is exponential in the number of variables2 . This leads to considering restricted classes of polynomial interpretations and other simplifications of this general procedure [37]. 1 In fact, Lankford had already mentioned this [28, page 5] but, in contrast to Dershowitz, he did not say anything about the need for requiring anything else (e.g., the subterm property) to guarantee the well-foundedness of the induced ordering. 2 We need to decide about the satisfaction of a formula (∀x1 ∈ R) · · · (∀xn ∈ R) F (P1 , . . . , Pm ), with m polynomials with real coefficients and n variables each, where F (P1 , . . . , Pm ) is a quantifier free boolean formula whose atomic predicates are equalities Pi (x1 , . . . , xn ) = 0 and strict inequalities Pi (x1 , . . . , xn ) > 0 (or Pi (x1 , . . . , xn ) < 0) for 1 ≤ i ≤ m. Take ω = 1, s = m, and k = n in [2, Theorem 1.3.2]. Polynomials with real, rational, and integer coefficients 3 Recently, a new framework for proving polynomial termination has been introduced [30] in which no subterm property is required. Basically, this is achieved by requiring that comparisons between terms are not below a given positive real number δ. For instance, the components of the rewrite rules l → r are compared as follows: [l] − [r] ≥ δ > 0. On the other hand, regarding decidability issues, the conditions imposed in this framework can also be viewed as decidable constraints, once an appropriate translation to the first-order theory of the reals is made. In Section 3, we give a more detailed account of both frameworks. Despite the fact that polynomials over the reals include polynomials over the naturals, no clear statement about the relative power of the derived termination techniques appears in the literature. In fact, there are few examples showing the use of polynomials with real or rational coefficients in proofs of termination. In [17], Dershowitz gave no concrete example of the use of such polynomial interpretations; no other such ‘proper’ examples seem to have ever been handled by him [18]. After Dershowitz’s work, there have been attempts to use polynomial interpretations over the reals in practice, notably Steinbach’s [37] and Giesl’s [19] works. In [37], Steinbach gives a detailed description of a method to prove termination of a given TRS by using polynomial interpretations over the reals. However, he gives no proof example involving either real or rational coefficients. In his PhD thesis, Steinbach considers the following TRS R [38, Example 5.82]: f(X,h(Y)) -> g(f(X,Y),X) i(X) -> f(X,X) k(i(X),Y) -> k(k(X,Y),0) and gives a polynomial proof of termination by using a polynomial interpretation with rational coefficients generated by his implementation: [f](x, y) = xy + 2.598x + 2502.619y [g](x, y) = x + y [h](x) = 43.324x + 1 [i](x) = 26007.979x2 + 1 [k](x, y) = xy + 1.26x + 10.079y [0] = 2 However, termination of R can also be proved by using the following polynomial interpretation with only natural coefficients (automatically computed by mu-term [29])! [f](X1,X2) = X1.X2 + X1 + X2 [i](X) = X.X + 2.X + 1 [h](X) = X + 1 [k](X1,X2) = X1 + X2 [g](X1,X2) = X1 + X2 [0] = 0 Giesl, on the other hand, developed the POLO system which, in principle, is able to deal with polynomial interpretations over the reals [21]. On the basis of Collins’ algorithm to decide the satisfaction of a set of inequalities in the domain of real numbers [14], Giesl implemented a termination checker for such polynomial interpretations and wrote that he ‘knows of no TRS whose termination proof requires a polynomial interpretation with non-rational coefficients’ and, so ‘we have restricted the algorithm to rational instead of real numbers’ [19, Section 3]. Although this suggests the existence of a TRS requiring the use of rational coefficients (instead of integer coefficients) for 4 Salvador Lucas achieving a proof of termination, no such example is given in Giesl’s papers and reports on POLO [19–21] or elsewhere. After more than 25 years, the following question remains open: Is there any TRS that can be proved polynomially terminating by using an ordering induced by polynomials with real (or rational) coefficients which at the same time cannot be proved polynomially terminating by using polynomials where only integer coefficients are allowed? In this paper, we answer this question affirmatively at two levels: for instance, the following TRS RR : f(f(X)) -> g(X) g(c(X)) -> f(c(f(X))) k(X,a2,b1) -> k(a1,X,b1) k(a1’,X,b1) -> k(X,a2’,b1) k(X,X,b1) -> k(g(X),b2,b2) k(g(X),b3,b3) -> k(X,X,b4) f(f(f(f(X)))) -> k(X,X,X) is proved polynomially terminating by using pretation with real algebraic coefficients3 : √ a1 f (x) = 2 x + 1 g(x) = 2x a2 k(x, y, z) = x + y + z a01 c(x) = x + 5 a02 the following polynomial inter=0 =1 =1 =0 b1 b2 b3 b4 =1 =0 =1 =0 As we also demonstrate below, the TRS RR cannot be proved terminating by using a polynomial interpretation with rational coefficients. In fact, in Section 4, we prove that there is an infinite number of such TRSs. We show how to build them and how to obtain the corresponding polynomial proofs. Furthermore, the following TRS RQ : h(f(X)) -> g(X) k3(a1,X,a3,b1) -> k3(a1,a2,X,b1) g(c(X)) -> h(c(f(X))) k3(a1’,a2’,X,b1) -> k3(a1’,X,a3’,b1) k2(X,a2,b1) -> k2(a1,X,b1) k3(X,X,X,b1) -> k3(g(X),b2,b2,b2) k2(a1’,X,b1) -> k2(X,a2’,b1) k3(g(X),b3,b3,b3) -> k3(X,X,X,b4) k2(X,X,b1) -> k2(h(X),b2,b2) f(f(f(X))) -> k2(X,X,X) k2(h(X),b3,b3) -> k2(X,X,b4) h(h(X)) -> k2(X,X,X) k3(X,a2,a3,b1) -> k3(a1,X,a3,b1) f(f(f(f(X)))) -> k3(X,X,X,X) k3(a1’,X,a3’,b1) -> k3(X,a2’,a3’,b1) h(h(X)) -> k3(X,X,X,X) can be proved terminating by using a polynomial interpretation with rational coefficients, whereas it cannot be proved terminating by using a polynomial intepretation with integer coefficients. Not only do these results solve an old open problem, we believe that the proof method that is used here well also eventually be useful or inspirational for other purposes. In both cases, the idea is: 1. To use a TRS to establish a strong link between the values of the coefficients of the (linear) polynomial interpretations of some symbols. This is the case of the first two rules of RR above, which establish that f12 = g1 3 More precisely, real algebraic integer coefficients: a real number x ∈ R is said to be a (real) algebraic integer if it satisfies an equation xn +an−1 xn−1 +· · ·+a1 x+a0 = 0, of finite degree n where ai ∈ Z for 0 ≤ i ≤ n − 1 [16]. Polynomials with real, rational, and integer coefficients 5 √ (or f1 = g1 ), where f1 and g1 are the coefficients of x in the (intended) linear interpretations for f and g in RR . Also, the first two rules of RQ establish that h1 f1 = g1 (equivalently, f1 = hg11 ). 2. To use TRSs to establish a concrete value for the coefficient of x in the (linear) polynomial interpretation of some (unary) symbols. This is the case of the rules defining k in RR , which fix g1 = 2, and also the case of the rules defining k2 and k3 in RQ , which fix h1 = 2 and g1 = 3, respectively. 3. To use some additional rule(s) to force the linearity of all the involved polynomials, thus making the whole approach consistent. Section 6 discusses some related work and Section 7 presents our conclusions. 2 Preliminaries Let N, Z, Q, and R be the sets of natural, integer, rational and real numbers, respectively; given one of such sets N and z ∈ N , we let Nz = {x ∈ N | x ≥ z}. A real number x ∈ R is said to be algebraic if it satisfies an equation xn + an−1 xn−1 + · · · + a1 x + a0 = 0, of finite degree n where ai ∈ Q for 0 ≤ i ≤ n − 1. A non-algebraic real number is said to be transcendental. An algebraic number x ∈ R is said to be a (real) algebraic integer if it satisfies an equation xn + an−1 xn−1 + · · · + a1 x + a0 = 0, of finite degree n where ai ∈ Z for 0 ≤ i ≤ n − 1 [16]. A binary relation R on A is terminating (or well-founded) if there is no infinite sequence a1 R a2 R a3 · · · . A transitive and irreflexive relation > on A is an ordering. Given f : Ak → A and i ∈ {1, . . . , k}, we say that > is monotonic on the i-th argument of f if, whenever x > y, we have f (x1 , . . . , xi−1 , x, . . . , xk ) > f (x1 , . . . , xi−1 , y, . . . , xk ) for all x, y, x1 , . . . , xk ∈ A. 2.1 Rewrite systems and termination of rewriting Throughout the paper, X denotes a countable set of variables and F denotes a signature, i.e., a set of function symbols {f, g, . . .}, each having a fixed arity given by a mapping ar : F → N. The set of terms built from F and X is T (F, X ). Terms are viewed as labelled trees in the usual way; the nodes of such trees are addressed by positions, i.e., sequences of positive integers. A rewrite rule is an ordered pair (l, r), written l → r, with l, r ∈ T (F, X ), l 6∈ X and Var(r) ⊆ Var(l). The left-hand side (lhs) of the rule is l and is the right-hand side (rhs) is r. A TRS is a pair R = (F, R), where R is a set of rewrite rules. A term t ∈ T (F, X ) rewrites to s (which is written t → s) if there is a position p in t such that the subterm t|p at position p is σ(l) for some substitution σ and rule l → r ∈ R (t|p = σ(l)), and if s is obtained by replacing such a subterm by the corresponding instance σ(r) of r (s = t[σ(r)]p ). A TRS is terminating if → is terminating. The problem of proving termination of a TRS is equivalent to finding a well-founded, stable, and monotonic 6 Salvador Lucas (strict) ordering > on terms (i.e., a reduction ordering) which is compatible with the rules of the TRS, i.e., such that l > r for all rules l → r of the TRS. Here, monotonic means that, for all k-ary symbols f and i ∈ {1, . . . , k}, > is monotonic on the i-th argument of f , when f is viewed as a mapping k f : T (F, X ) → T (F, X ). Stable means that, whenever t > s, we have σ(t) > σ(s) for all terms t, s and substitutions σ. 2.2 Algebraic interpretations and term orderings Term orderings can be obtained by giving appropriate interpretations to the function symbols of the signature. Given a signature F, an F-algebra is a pair A = (A, FA ), where A is a set and FA is a set of mappings fA : Ak → A for each f ∈ F where k = ar(f ). We say that A is an F-algebra over the reals (resp. rationals, integers, naturals) if A ⊆ R (resp. Q, Z, N). For a given valuation mapping α : X → A, the evaluation mapping [α] : T (F, X ) → A is inductively defined by [α](x) = α(x) if x ∈ X and [α](f (t1 , . . . , tk )) = fA ([α](t1 ), . . . , [α](tk )) for x ∈ X , f ∈ F, t1 , . . . , tk ∈ T (F, X ). Given a term t with Var(t) = {x1 , . . . , xn }, we write [t] to denote the function Ft : An → A given by Ft (a1 , . . . , an ) = [α(a1 ,...,an ) ](t) for each tuple (a1 , . . . , an ) ∈ An , where α(a1 ,...,an ) (xi ) = ai for 1 ≤ i ≤ n. An ordered F-algebra, is a triple (A, FA , >A ), where (A, FA ) is a Falgebra and >A is a (strict) ordering on A. Then, we can define an ordering > on terms given by t > s if and only if [α](t) >A [α](s), for all α : X → A. If >A is well-founded, then > is also well-founded and the algebra is said to be well-founded [40, Section 6.2.1]. 3 Polynomial interpretations Let A be a subring of a commutative ring B. Let x1 , . . . , xn ∈ B. For each ntuple (r1 , . . . , rn ) = (r) ∈ Nn (called a multi-index), we use vector notation, letting (x) = (x1 , . . . , xn ), and πr (x) = xr11 · · · xrnn [27]. Such products πr (for each r ∈ Nn ) are called (primitive) monomials in n variables over Pmulti-index n B. i=1 ri is the degree of the monomial πr ; if r1 = r2 = · · · = rn = 0, then πr is the constant monomial 1. A polynomial P in n variables over B with coefficients in A is the finite P sum P = ar πr (x), of terms ar πr (x) consisting of the product of a coefficient ar ∈ A, and a monomial in n variables over B, for r ∈ Nn . The set of such polynomials is denoted by A[x1 , . . . , xn ], where x1 , . . . , xn are distinct variables. When variables x1 , . . . , xn range on B, P induces a P (polynomial) n function P (x , . . . , x ) : B → B as follows: P (x , . . . , x ) = ar πr (x) = 1 n 1 n P ar xr11 · · · xrnn . In the following, we will write πr ∈ P (or just π ∈ P ) to express that πr is a monomial of a polynomial P such that ar 6= 0. Moreover, for a given monomial πr ∈ P , we let coefP (πr ) = ar (or just coef(πr ) = ar if the polynomial P is clear from the context), degi (πr ) = ri for 1 ≤ i ≤ n, {1, . . . , n} | ri 6= 0}. The degree deg(P ) of P is given by and Iπ+r = {i ∈ P deg(P ) = max({ i∈Iπ+ degi (π) | π ∈ P }). Polynomials with real, rational, and integer coefficients 7 A polynomial P ∈ A[x] of degree n can be written as follows: P (x) = an xn + an−1 xn−1 + · · · + a1 x + a0 , where ai ∈ A for 0 ≤ i ≤ n and an 6= 0. We then say that an is the leading coefficient of P . Given polynomials P, Q ∈ A[x], let P ⊗ Q be the polynomial corresponding to the composition of the associated polynomial functions. Given a positive natural number n, we use P ⊗n to denote the polynomial given by P 1 = P and P ⊗n+1 = P ⊗ P ⊗n . Lemma 1 Let P ∈ A[x] be a polynomial of degree n > 0, let an be the leading coefficient of P and mP∈ N1 . Then, d = deg(P ⊗m ) = nm and the leading coefficient of P ⊗m is an m−1 i=0 ni . Proof By induction on m. If m = 1, it is immediate. For the inductive case, consider P = an xn + · · · + a1 x + a0 . Then, P ⊗m+1 (x) = P (P ⊗m (x)) = an (P ⊗m (x))n + · · · + a1 P ⊗m (x) + a0 By the Induction P Hypothesis, d0 = deg(P ⊗m ) = nm and the leading coeffim−1 ni cient of P ⊗m is an i=0 . Clearly, d = deg(P ⊗m+1 ) = deg(an (P ⊗m (x))n ) = n nm P= nm+1 . OnPthe other Phand, the leading coefficient of P ⊗m+1 is n an an m−1 i=0 ni 1+ = an m i=1 ni = an m i=0 ni . In the following, we are mainly concerned with polynomials P ∈ R[x1 , . . . , xn ] with real coefficients (or polynomials P ∈ Q[x1 , . . . , xn ] with rational coefficients). Polynomial algebras over the reals A = (A, FA ) for a given signature F consist of a carrier set A ⊆ R, which we assume to be unbounded from above, i.e., there is no M ∈ R such that ∀x ∈ A, x ≤ M . Functions in FA are (restrictions of) polynomial functions [f ] : Ak → A for each k-ary symbol f ∈ F, induced by polynomials [f ] ∈ R[x1 , . . . , xk ] (or [f ] ∈ Q[x1 , . . . , xk ]). We will extensively use the following facts: let P, Q ∈ R[x]: Fact 1: If for all x ∈ A, P (x) ≥ 0, then the leading coefficient of P is positive4 . Fact 2: If the leading coefficient of Q is positive, then P ≥ Q implies deg(P ) ≥ deg(Q). 3.1 Polynomial termination When proving polynomial termination of a TRS R = (F, R) for a given polynomial algebra (A, FA ), we always need to ensure positiveness of the polynomial Pl,r = [l] − [r] for each rule l → r of the TRS, and valuations α : X → A. Thus, given a polynomial F-algebra A for a given signature F, we say that A is compatible with R if for all rule l → r in R, Pl,r > 0. According to Dershowitz’s approach [17], in order to guarantee termination of R, we have to further ensure monotonicity of each polynomial function in the algebra and the subterm property: ∀x1 , . . . , xk ∈ A, and i ∈ {1, . . . , k}, [f ](x1 , . . . , xi−1 , xi , . . . , xk ) > xi . The subterm property is essential to be able 4 Note that this does not hold if A is bounded from above; for instance, let A = ] − ∞, 0] and P (x) = −x. Then, ∀x ∈ A, P (x) ≥ 0. 8 Salvador Lucas to guarantee the well-foundedness of the underlying ordering. Here, polynomial algebras that satisfy those monotonicity and subterm requirements are called D-polynomial algebras. If a D-polynomial algebra is compatible with a TRS R, then R is (D-polynomially) terminating. A new framework for proving termination of TRSs by using polynomials over the reals has recently been introduced in [30]. The carrier set A of the polynomial algebra A = (A, FA ) must be bounded from below (i.e., there is m ∈ R such that ∀x ∈ A, m ≤ x). We say that A is L-compatible with R if there is a positive real number δ such that, for all l → r ∈ R, [l] − [r] ≥ δ (again, for all valuations α : X → A). The role of δ in the previous formulation is to guarantee the well-foundedness of the underlying ordering >δ [30, Theorem 1]. Thus, the subterm property is no longer required. The necessary monotonicity of >δ can be ensured (for all possible value of δ!) by requiring ∂[f ] ∂xi ≥ 1 for all symbols f ∈ F and i ∈ {1, . . . , k} [30, Theorem 2]. Here, polynomial algebras A = (A, FA ) that satisfy this concrete monotonicity requirement are called L-polynomial algebras. An L-polynomial algebra induces a reduction ordering >δ for every δ > 0. Therefore, if an L-polynomial algebra A is L-compatible with a TRS R, then R is (L-polynomially) terminating. 3.2 Linear poynomial interpretations A linear polynomial interpretation is one whose polynomials are of the form [f ](x1 , . . . , xk ) = ak xk + ak−1 xk−1 + · · · + a1 x1 + a0 for all k-ary symbols f . The following lemma is used below. Lemma 2 Let m ∈ N1 and f (x) = f1 x + f0 be such that f1 6= 1. Then, 1−f m f ⊗m = f1m x + f0 1−f11 . Proof By induction on m. If m = 1 it is obvious. For the inductive case by the Induction Hypothesis, we have: 1−f1m 1−f1 ) 1−f m f1 f0 1−f11 + f0 f −f m+1 f0 ( 1 1−f1 1 + 1) 1−f1m+1 f0 ( 1−f ) 1 f (f ⊗m (x)) = f (f1m x + f0 = f1m+1 x + = f1m+1 x + = f1m+1 x + 1−f1m 1−f1 ) + f0 1−f m f0 (f1 1−f11 + 1) f −f m+1 +1−f1 f0 ( 1 11−f1 ) = f1 (f1m x + f0 = f1m+1 x + = f1m+1 x + 3.3 General assumptions The results discussed in Sections 4 and 5 below are intended to be independent from the concrete (D- or L-) framework which underlies our reasoning. Still, we need to make some concrete assumptions. Due to the requirement of subterm (in Dershowitz’s framework) and monotonicity properties (in both Polynomials with real, rational, and integer coefficients 9 frameworks), these assumptions actually hold when D- or L- polynomial algebras are considered in termination problems. Our results are, therefore, independent from (and valid in) both frameworks. Apart from the carrier set A being unbounded from above for the considered F-algebra A = (A, FA ) (this is a standard requirement in polynomial termination), we make the following assumption: Assumption 1: The leading coefficient of the polynomial [f ] interpreting a monadic symbol f is positive. Assumption 2: If [f ] interprets a k-ary symbol f ∈ F, for k > 0, then deg([f ]) ≥ 1. Assumption 3: If [f ] is a linear polynomial interpreting a k-ary symbol f , then ai ≥ 1 for all i ∈ {1, . . . , k}. Note from the discussion in Section 3.1 that, disregarding the notion of (Dor L-) polynomial algebra, we always need to ensure the positiveness of the polynomial Pl,r = [l] − [r] for each rule l → r of the TRS. We have the following result, which will allow us to disregard δ when dealing with linear L-polynomial algebras (see [30] for a thorough discussion). Proposition 1 Let R = (F, R) be a finite TRS, and let A = (A, FA ) be a linear L-polynomial algebra, where α ∈ A ⊆ Rα for some α ∈ R0 and A is not bounded from above. If A is compatible with R, then R is L-polynomially terminating. Proof Consider an arbitrary rule l → r in R. Since A is a linear polynomial interpretation, Pl,r = [l] − [r] is also linear. Since Pl,r > 0. and A is not bounded from above, the linear polynomial Pl,r cannot have negative coefficients for any rule in R. Therefore, by [30, Corollary 1], there is a positive δ which makes R L-polynomially compatible. Therefore, R is terminating. 4 Real vs. rational coefficients Given m ∈ N, consider the following TRS Sm : fm+1 (X) -> g(X) g(c(X)) -> f(c(fm (X))) In the following results, we use f , g, and c (instead of [f ], [g] and [c]) to denote the polynomials interpreting the unary symbols f, g, and c, respectively. Also, fi (resp. gi , ci ) is the coefficient of the monomial xi of degree i in the polynomial f interpreting the symbol f. Finally, nf , ng , and nc are the degrees of such polynomials. We have the following: Proposition 2 Let m ∈ N, Sm be as above and let A be a polynomial algebra that is compatible with Sm . Then, nm+1 = ng . f Proof By using Lemma 1, we have: deg([fm+1 (X)]) = nm+1 f deg([g(c(X))]) = ng nc deg([g(X)]) = ng m+1 nc deg([f(c(fm (X)))]) = nf nc nm f = nf 10 Salvador Lucas Since [fm+1 (X)] > [g(X)], we must have nm+1 ≥ ng (by using Assumption f 1 and Fact 2). Similarly, since [g(c(X))] > [f(c(fm (X)))], we have ng nc ≥ nm+1 nc . Since nc ≥ 1 (Assumption 2), we have nm+1 ≥ ng ≥ nm+1 , i.e., f f f m+1 nf = ng . Proposition 3 Let m ∈ N, Sm be as above and let A be a polynomial algebra that is compatible with Sm . If nf = ng = 1, then f1m+1 = g1 . Moreover, either nc = 1 or f1 = g1 = 1. Proof By Lemma 1, we have: Pm ni m+1 [fm+1 (X)] = fnf i=0 f xnf + · · · [g(X)] = gng xng + · · · n ··· [g(c(X))] = gng cngc xng nc + P n nf nc [f(c(fm (X)))] = fnf cnfc fnf P = = m−1 i=0 nif m+1 xnf nc i m nf nc i=1 nf nm+1 fnf cP x f nc + nc fnf m i m+1 nc n n fnf i=0 f cnfc xnf nc + · · · + ··· ··· where only the leading coefficients and monomials are shown; those of strictly lower degrees are disregarded here (under ‘· · · ’). Consider the first rule of Sm . Let Pl1 ,r1 = [fm+1 (X)] − [g(X)], n = deg(PP l1 ,r1 ) and An be the leading m coefficient of Pl1 ,r1 . By Proposition 2, An = fnf i=0 Pm 0, i.e., fnf m i=0 nif nif − gng . Again, An ≥ ≥ gng . Similarly, when considering Pl2 ,r2 = [g(c(X))] − n nc Pm ni n [f(c(f (X)))], we have gng cngc ≥ fnf i=0 f cnfc . Since nf = ng = 1 and (m+1)nc cnc > 0 (Assumption 1), we actually have f1m+1 ≥ g1 ≥ f1 Since nf = 1, we have f1 ≥ 1 (Assumption 3). Again, nc ≥ 1, and we have (m+1)nc (m+1)nc f1m+1 ≥ g1 ≥ f1 ≥ f1m+1 , i.e., f1 = f1m+1 = g1 . This is possible only if either nc = 1 or f1 = g1 = 1 holds. Proposition 3 suggests how to introduce an incompatibility of polynomials which only contain rational coefficients which is avoided if real (algebraic) coefficients are allowed. For instance, if we can set g1 = 2, then f1m+1 = g1 = 2. Hence, we could not prove polynomial termination by using polynomials √ having only rational coefficients, but this would be still possible if f1 = m+1 2 as in a polynomial interpretation where real algebraic integer coefficients are allowed. In the following, we show how to fix g1 = 2. Consider the following TRS K: k(X,a2 ,b1 ) -> k(a1 ,X,b1 ) k(X,X,b1 ) -> k(g(X),b2 ,b2 ) k(a01 ,X,b1 ) -> k(X,a02 ,b1 ) k(g(X),b3 ,b3 ) -> k(X,X,b4 ) In the following proposition we deal with multivariate monomials and polynomials. Given P ∈ R[x1 , . . . , xn ], we let nP,i to be the maximum exponent of xi in any monomial of P : nP,i = max({degi (π) | π ∈ P, i ∈ Iπ+ }) Polynomials with real, rational, and integer coefficients 11 Also, given xi , xj ∈ {x1 , . . . , xn }, for i 6= j, let mP,i,j be the maximum simultaneous degree of variables xi , xj ∈ Iπ+ in a monomial π ∈ P : mP,i,j = max({degi (π) + degj (π) | π ∈ P, {i, j} ⊆ Iπ+ }) We extend this notation to sets of indices I ⊆ {1, . . . , n}: X degi (π) | π ∈ P, I ⊆ Iπ+ }) mP,I = max({ i∈I Note P that deg(P ) ≥ nP,i for all xi ∈ {x1 , . . . , xn }, and nP,i + nP,j ≥ mP,i,j (and i∈I nP,i ≥ mP,I ). We have the following: Proposition 4 Let K be as above, and let A be a polynomial algebra that is compatible with K. Then, ng ≤ 2. Proof We have: deg([k(X,a2 ,b1 )]) = nk,1 deg([k(a01 ,X,b1 )]) = nk,2 deg([k(a1 ,X,b1 )]) = nk,2 deg([k(X,a02 ,b1 )]) = nk,1 Thus, nk,1 ≥ nk,2 and nk,2 ≥ nk,1 , i.e., nk,1 = nk,2 . Therefore, nk,1 + nk,2 = 2nk,1 ≥ mk,1,2 . Now, since nk,1 = nk,2 , we have: deg([k(X,X,b1 )]) = max(nk,1 , mk,1,2 ) deg([k(g(X),b2 ,b2 )]) = nk,1 ng deg([k(g(X),b3 ,b3 )]) = nk,1 ng deg([k(X,X,b4 )]) = max(nk,1 , mk,1,2 ) Therefore, max(nk,1 , mk,1,2 ) = nk,1 ng . Now, we consider two cases: 1. If nk,1 ≥ mk,1,2 , then nk,1 = nk,1 ng which is only possible if ng = 1 ≤ 2. 2. If nk,1 < mk,1,2 , then mk,1,2 = nk,1 ng , i.e., 2nk,1 ≥ nk,1 ng . Since nk,1 ≥ 1, then ng ≤ 2. Finally, given m ∈ N, consider the (one rule TRS) Lm : f2(m+1) (X) -> k(X,X,X) Then, we have: Proposition 5 Let m ∈ N1 , let K and Lm as above; let R = K ∪ Lm and A be a polynomial algebra that is compatible with R. If nf = ng = 1, then nk = 1 and g1 = 2. Proof We have: 2(m+1) deg([f2(m+1) (X)]) = nf and deg([k(X,X,X)]) = nk 2(m+1) Therefore, since nf = 1, and nf = 1 ≥ nk , we have nk = 1. Now we know that A is a linear polynomial algebra. Then, we have: [k(X,a2 ,b1 )] = k1 x + k2 a2 + k3 b1 + k0 [k(a1 ,X,b1 )] = k1 a1 + k2 x + k3 b1 + k0 [k(a01 ,X,b1 )] = k1 a01 + k2 x + k3 b1 + k0 [k(X,a02 ,b1 )] = k1 x + k2 a02 + k3 b1 + k0 12 Salvador Lucas Since Pl1 ,r1 = [k(X,a2 ,b1 )] − [k(a1 ,X,b1 )] = (k1 − k2 )x + k2 a2 + k3 b1 − k1 a1 − k3 b1 >0 we have k1 ≥ k2 (Fact 1). By also considering Pl2 ,r2 = [k(a01 ,X,b1 )] − [k(X,a02 ,b1 )], we get k2 ≥ k1 , and finally conclude k1 = k2 . Disregarding the constant monomialse, we have: [k(X,X,b1 )] = 2k1 x + · · · [k(g(X),b3 ,b3 )] = k1 g1 x + · · · [k(g(X),b2 ,b2 )] = k1 g1 x + · · · [k(X,X,b4 )] = 2k1 x + · · · Then, 2k1 = k1 g1 . Since k1 ≥ 1 (Assumption 3), we have g1 = 2. Corollary 1 Let m ∈ N1 , Sm , let K and Lm be as above, let R = Sm ∪K∪Lm and A be a polynomial algebra that is compatible with R. Then, A is a linear polynomial algebra. Proof By Proposition 2, nm+1 = ng and by Proposition 4, ng ≤ 2. Thus, f m+1 nf ≤ 2 and, since m ≥ 1 and nf ∈ N1 , the only possibility is nf = ng = 1. By Proposition 5, nk = 1 and g1 = 2. Thus, by Proposition 3, nc = 1, i.e., A is a linear polynomial algebra. Theorem 1 Let m ∈ N1 and Rm = Sm ∪ K ∪ Lm , i.e., Rm is: fm+1 (X) -> g(X) g(c(X)) -> f(c(fm (X))) k(X,a2 ,b1 ) -> k(a1 ,X,b1 ) k(a01 ,X,b1 ) -> k(X,a02 ,b1 ) k(X,X,b1 ) -> k(g(X),b2 ,b2 ) k(g(X),b3 ,b3 ) -> k(X,X,b4 ) f2(m+1) (X) -> k(X,X,X) The polynomial algebra (A, FA ), where A = R0 and FA is the linear polynomial interpretation √ f (x) = m+1 2 x + 1 g(x) = 2x k(x, y, z) = x + yl + z m 1 √ c(x) = x + ( m+1√2−1)(2− m+1 2) a1 a2 a01 a02 = = = = 0 1 1 0 b1 b2 b3 b4 =1 =0 =1 =0 proves the termination of Rm . Proof Since all coefficients accompanying all variables are greater than or ] equal to 1, we have ∂[f ∂xi ≥ 1 for all symbols f and arguments i ∈ {1, . . . , ar(f )}. Therefore, by Proposition 1, we only need to further check that, for all rules l → r ∈ Rm , Pl,r = [l] − [r] > 0. Polynomials with real, rational, and integer coefficients 13 1. Rule fm+1 (X) -> g(X): By Lemma 2, we have 1−f m+1 1 [l1 ] = [fm+1 (X)] = f1m+1 x + f0 1−f 1 √ m+1 √ m+1 2) √ = ( m+1 2)m+1 x + 1−(1− m+1 2 1 √ = 2x − 1− m+1 2 = 2x + m+1√1 2−1 [r1 ] = [g(X)] = 2x Therefore, Pl1 ,r1 = [l1 ] − [r1 ] = m+1√1 2−1 > 0. 2. Rule g(c(X)) -> f(c(fm (X))): We have: [l2 ] = [g(c(X))] m l 1 √ ) = 2(x + ( m+1√2−1)(2− m+1 2) m l 1 √ = 2x + 2 ( m+1√2−1)(2− m+1 2) [r2 ] = [f(c(fm (X)))] l m 1−f m 1 √ = f1 (f1m x + f0 1−f11 + ( m+1√2−1)(2− ) + f0 m+1 2) m l f1 −f1m+1 m+1 1 = f1 x + f0 1−f1 + f1 ( m+1√2−1)(2− m+1√2) + f0 m √ √ l m+1 m+1 2−2 1 √ + √ √ = 2x + 1− m+1 2 +1 m+1 m+1 ( 2) m l √ 2 √ √2−1)(2− m+1 m+1 m+1 2−2+1− 2 1 √ √ √ = 2x + 2 + m+1 m+1 m+1 1− 2 ( 2−1)(2− 2) m √ l 1 √ = 2x + m+1√1 2−1 + m+1 2 ( m+1√2−1)(2− m+1 2) Pl2 ,r2 1 2−1)(2− 6∈ N for any m ∈ N1 , we have: m √ l 1 √ − m+1√1 2−1 = [l2 ] − [r2 ] = (2 − m+1 2) ( m+1√2−1)(2− m+1 2) √ 1 √ > (2 − m+1 2) ( m+1√2−1)(2− − m+1√1 2−1 m+1 2) Therefore, since ( √ m+1 √ m+1 2) 1 = m+1√1 2−1 − =0 √ m+1 2−1 3. Rule k(X,a2 ,b1 ) -> k(a1 ,X,b1 ): [l3 ] = [k(X,a2 ,b1 )] = x + 2 and [r3 ] = [k(a1 ,X,b1 )] = x + 1; thus, Pl3 ,r3 = 1 > 0. 4. Rule k(a01 ,X,b1 ) -> k(X,a02 ,b1 ): [l4 ] = [k(a01 ,X,b1 )] = x + 2 and [r4 ] = [k(X,a02 ,b1 )] = x + 1; thus, Pl4 ,r4 = 1 > 0. 5. Rule k(X,X,b1 ) -> k(g(X),b2 ,b2 ): [l5 ] = [k(X,X,b1 )] = 2x + 1 and [r5 ] = [k(g(X),b2 ,b2 )] = 2x; thus, Pl5 ,r5 = 1 > 0. 6. Rule k(g(X),b3 ,b3 ) -> k(X,X,b4 ): [l6 ] = [k(g(X),b3 ,b3 )] = 2x+2 and [r6 ] = [k(X,X,b4 )] = 2x; thus, Pl5 ,r5 = 2 > 0. 7. Rule f2(m+1) (X) -> k(X,X,X): By Lemma 2, [l7 ] = [f2(m+1) (X)] 2(m+1) = f1 = 4x + 2(m+1) x + f0 3 2−1 1−f1 1−f1 √ m and [r7 ] = [k(X,X,X)] = 3x. Thus, Pl7 ,r7 = x + 3 2−1 √ m > 0 for all x ≥ 0. 14 Salvador Lucas Note that the TRS RR in the introduction is R1 for Rm as in Theorem 1 and m = 1. Note also that R0 is not even terminating (indeed S0 is not terminating already). Corollary 2 There is an infinite number of TRSs that can be proved polynomially terminating by using a polynomial interpretation with real algebraic integer coefficients, whereas they cannot be proved polynomially terminating by using a polynomial interpretation that only uses rational coefficients. Proof Theorem 1 shows that, for each m ∈ N1 , the TRS Rm can be proved polynomially terminating by using polynomials with real algebraic integer coefficients. Let A be a polynomial algebra whose polynomials only have rational coefficients. If A is compatible with Rm for some m ∈ N1 , then by Corollary 1, A must be a linear polynomial algebra. By Proposition 5, g1 = 2 and by Proposition 3, f1m+1 = 2 which is not possible if f1 ∈ Q. Note that the inclusion of the rule in Lm is essential to obtain a true example of the power of polynomial algebras with real coefficients. Example 1 Termination of R01 = S1 ∪ K (i.e., RR above without the rule f(f(f(f(X)))) -> k(X,X,X)) is proved by the following simple interpretation over the naturals: f (x) = 2x + 1 g(x) = 4x + 1 k(x, y, z) = xyz + x + 3y + z c(x) = x + 2 a1 a2 a01 a02 =0 =1 =1 =0 b1 b2 b3 b4 =2 =0 =0 =0 5 Rational vs. integer coefficients Consider the TRS S: h(f(X)) -> g(X) g(c(X)) -> h(c(f(X))) We have the following: Proposition 6 Let S be as above, and let A be a polynomial algebra that is compatible with S. Then, nh nf = ng . Proof We have: deg([h(f(X))]) = nh nf deg([g(c(X))]) = ng nc deg([g(X)]) = ng deg([h(c(f(X)))]) = nh nc nf By reasoning as in the proof of Proposition 2 and taking into account that nc ≥ 1 (Assumption 2), we conclude that nh nf = ng . Proposition 7 Let S be as above, and let A be a polynomial algebra that is compatible with S. If nh = ng , then nf = 1 and hnh f1nh = gng . Moreover, either nc = 1 or f1 = 1. Polynomials with real, rational, and integer coefficients 15 Proof By Proposition 6, nh nf = ng . Since nh = ng , we have nf = 1. Now, consider: [h(f(X))] = hnh fnnfh xnh nf + · · · [g(X)] = gng xng + · · · ng ng nc + · · · [h(c(f(X)))] = hnh cnnhc fnnfh nc xnh nf nc + · · · [g(c(X))] = gng cnc x where, again, only the leading coefficients and monomials are shown. Let Pl1 ,r1 = [h(f(X))] − [g(X)], n = deg(Pl1 ,r1 ), and An be the leading coefficient of Pl1 ,r1 . By Proposition 6, it must be An = hnh fnnfh − gng . Again, An ≥ 0, i.e., hnh fnnfh ≥ gng . Similarly, with Pl2 ,r2 = [g(c(X))] − [h(c(f(X)))], we n conclude gng cngc ≥ hnh cnnhc fnnfh nc . Since nh = ng and cnc > 0, we actually have hnh f1nh ≥ gng ≥ hnh f1nh nc . Since nf = 1, we must have f1 ≥ 1 (Assumption 3). Since (again) nc ≥ 1, we have hnh f1nh ≥ gng ≥ hnh f1nh nc ≥ hnh f1nh , i.e., hnh f1nh nc = hnh f1nh = gng . This entails that either nc = 1 or f1 = 1. Proposition 7 suggests how to introduce an incompatibility of polynomials that only contain integer or natural coefficients which can be avoided if rational coefficients are allowed. For instance, if we can simultaneously set nh = ng = 1, g1 = 3 and h1 = 2, then we would have 2f1 = 3. Thus, we could not prove polynomial termination by using polynomials that only contain integer coefficients. This is still possible if we use polynomials with rational coefficients: take f1 = 23 . Now, given a unary symbol ϕ and m ∈ N2 , consider the TRS Kϕ,m consisting of the following 2(m − 1) + 2 = 2m rules defining the m + 1-ary symbol km : km (X,a2 ,a3 ,...,am ,b1 ) -> km (a1 ,X,a3 ,...,am ,b1 ) km (a01 ,X,a03 ,...,a0m ,b1 ) -> km (X,a02 ,a03 ,...,a0m ,b1 ) . . . km (a1 ,a2 ,...,X,am ,b1 ) -> km (a1 ,a2 ,...,am−1 ,X,b1 ) km (a01 ,a02 ,...,a0m−1 ,X,b1 ) -> km (a01 ,a02 ,...,X,a0m ,b1 ) km (X,...,X,b1 ) -> km (ϕ(X),b2 ,...,b2 ) km (ϕ(X),b3 ,...,b3 ) -> km (X,...,X,b4 ) We have the following: Proposition 8 Let m ∈ N2 , ϕ ∈ F be such that ar(ϕ) = 1, let Kϕ,m be as above, and let A be a polynomial algebra that is compatible with Kϕ,m . Then, nϕ ≤ m. Proof For each i ∈ {1, . . . , m − 1}, we have: deg([km (a1 ,a2 ,...,X,ai+1 ,...,am ,b1 )]) = nkm ,i deg([km (a1 ,a2 ,...,ai ,X,...,am ,b1 )]) = nkm ,i+1 and deg([km (a01 ,a02 ,...,a0i ,X,...,a0m ,b1 )]) = nkm ,i+1 deg([km (a01 ,a02 ,...,X,a0i+1 ,...,a0m ,b1 )]) = nkm ,i By reasoning as in the proof of Proposition 4, we conclude that, for all i ∈ {1, . . . , m − 1}, nkm ,i = nkm ,i+1 . Therefore, m nkm ,1 ≥ mkm ,I for any I ⊆ 16 Salvador Lucas {1, . . . , m} such that I contains at least two elements: |I| ≥ 2. Now, since nkm ,i = nki ,i+1 for all i ∈ {1, . . . , m − 1}, we have: deg([km (X,...,X,b1 )]) = max({nkm ,1 } ∪ {mkm ,I | I ⊆ {1, . . . , m}, |I| ≥ 2}) deg([km (ϕ(X),b2 ,...,b2 )]) = nkm ,1 nϕ and deg([ϕ(X),b3 ,...,b3 )]) = nkm ,1 nϕ deg([km (X,...,X,b4 )]) = max({nkm ,1 } ∪ {mkm ,I | I ⊆ {1, . . . , m}, |I| ≥ 2}) Thus, M = max({nkm ,1 } ∪ {mkm ,I | I ⊆ {1, . . . , m}, |I| ≥ 2}) = nkm ,1 nϕ . Now, we consider two cases: 1. If M = nkm ,1 = nkm ,1 nϕ , we must have nϕ = 1 ≤ m. 2. If M 6= nkm ,1 , then mkm ,I = nkm ,1 nϕ for some I ⊆ {1, . . . , m}, |I| ≥ 2. Thus, mnkm ,1 ≥ nkm ,1 nϕ which, since nkm ,1 ≥ 1, is equivalent to m ≥ nϕ . Note that K in Section 4 is Kϕ,m above for ϕ = g and m = 2. Then, Proposition 4 can now be seen as a particular case of Proposition 8. Finally, given m ∈ N2 , we let Lm : fm+1 (X) -> km (X,...,X,X) m+1 hd 2 e (X) -> km (X,...,X,X) Then, we have: Proposition 9 Let m ∈ N2 , ϕ ∈ F such that ar(ϕ) = 1, let R = Kϕ,m ∪ Lm for Kϕ,m , and let Lm be as above, and A be a polynomial algebra that is compatible with R. If either nf = 1 or nh = 1, then nkm = 1, nϕ = 1, and ϕ1 = m. Proof We have: deg([fm+1 (X)]) = nm+1 f deg([h d m+1 2 e (X)]) = d m+1 e nh 2 deg([km (X,...,X,X)]) = nkm deg([km (X,...,X,X)]) = nkm d m+1 2 e Therefore, since nf = 1 or nh = 1, then, either nm+1 = 1 or nh f Thus, since nm+1 f ≥ nkm and d m+1 e nh 2 = 1. ≥ nkm , we have nkm = 1. Thus, deg([km (X,X,...,X,b1 )]) = 1 and deg([km (ϕ(X),b2 ,...,b2 ,b2 )]) = nϕ Since 1 ≥ nϕ , we conclude nϕ = 1. Now we know that A is a linear polynomial algebra. Disregarding the constant monomial, for each i ∈ {1, . . . , m − 1} we have: [km (a1 ,a2 ,...,X,ai+1 ,...,am ,b1 )] = km,i x + · · · [km (a1 ,a2 ,...,ai ,X,...,am ,b1 )] = km,i+1 x + · · · which implies km,i ≥ km,i+1 , and [km (a01 ,a02 ,...,a0i ,X,...,a0m ,b1 )] = km,i+1 x + · · · [km (a01 ,a02 ,...,X,a0i+1 ,...,a0m ,b1 )] = km,i x + · · · Polynomials with real, rational, and integer coefficients 17 which implies km,i ≥ km,i+1 . Therefore, we conclude km,i = km,i+1 for all i ∈ {1, . . . , m − 1}. Now, we have: [km (X,...,X,b1 )] [km (ϕ(X),b2 ,...,b2 )] [km (ϕ(X),b3 ,...,b3 )] [km (X,...,X,b4 )] = mkm,1 x + · · · = k 1 ϕ1 x + · · · = k 1 ϕ1 x + · · · = mk1 x + · · · Then, we have: mk1 ≥ k1 ϕ1 and k1 ϕ1 ≥ mk1 , i.e., mk1 = k1 ϕ1 . Since k1 ≥ 1 (Assumption 3), we have ϕ1 = m. Theorem 2 Let m ∈ N3 and Rm = S ∪ Kh,2 ∪ Kg,m ∪ L02 ∪ L0m : h(f(X)) -> g(X) g(c(X)) -> h(c(f(X))) k2 (X,a2 ,b1 ) -> k2 (a1 ,X,b1 ) k2 (a01 ,X,b1 ) -> k2 (X,a02 ,b1 ) k2 (X,X,b1 ) -> k2 (h(X),b2 ,b2 ) k2 (h(X),b3 ,b3 ) -> k2 (X,X,b4 ) km (X,a2 ,a3 ,...,am ,b1 ) -> km (a1 ,X,a3 ,...,am ,b1 ) -> km (X,a02 ,a03 ,...,a0m ,b1 ) km (a01 ,X,a03 ,...,a0m ,b1 ) . . . km (a1 ,a2 ,...,X,am ,b1 ) -> km (a1 ,a2 ,...,am−1 ,X,b1 ) km (a01 ,a02 ,...,a0m−1 ,X,b1 ) -> km (a01 ,a02 ,...,X,a0m ,b1 ) km (X,...,X,b1 ) -> km (g(X),b2 ,...,b2 ) km (g(X),b3 ,...,b3 ) -> km (X,...,X,b4 ) f(f(f(X))) -> k2 (X,X,X) h(h(X)) -> k2 (X,X,X) fm+1 (X) -> km (X,...,X,X) m+1 hd 2 e (X) -> km (X,...,X,X) The polynomial algebra (A, FA ), where A = R1 and FA is the linear polynomial interpretation h(x) f (x) g(x) c(x) = 2x + 1 = m 2x = mx = x+2 ai a0i b1 bi = = = = i m−i+1 m+1 1 i ∈ {1, . . . , m} i ∈ {1, . . . , m} i ∈ {2, 3, 4} k2 (x, y, z) = x + y + z km (x1 , . . . , xm , xm+1 ) = x1 + x2 + · · · + xm+1 proves termination of Rm . Proof Since all coefficients accompanying all variables are greater than or ] equal to 1, we have that ∂[f ∂xi ≥ 1 for all symbols f and arguments i ∈ {1, . . . , ar(f )}. Now, according to Proposition 1, we only need to check that, for all rules l → r ∈ Rm , [l] − [r] > 0. 1. Rule h(f(X)) -> g(X): [l1 ] = [h(f(X))] = 2 m 2 x + 1 = mx + 1, [r1 ] = [g(X)] = mx. Therefore, Pl1 ,r1 = 1 > 0. 18 Salvador Lucas 2. Rule g(c(X)) -> h(c(f(X))): [l2 ] = [g(c(X))] = m(x + 2) = mx + 2m, [r2 ] = [h(c(f(X)))] = 2( m 2 x + 2) + 1 = mx + 5. Therefore, Pl2 ,r2 = 2m − 5 > 0 for all m ∈ N3 (here, m ≥ 3 must hold). 3. The proof for the four rules in Kh,2 is analogous to that for the k-rules in Theorem 1 and is omitted here. 4. Rules km (a1 ,a2 ,...,X,ai+1 ,...,am ,b1 ) -> km (a1 ,a2 ,...,ai ,X,...,am ,b1 ) for i ∈ {1, . . . , m − 1}: [l3 ] = [km (a P1m,a2 ,...,X,ai+1 ,...,am ,b1 )] = x + Pj=1 aj − ai + b1 m = x + j=1 j − i + m + 1 = x + m(m+1) −i+m+1 2 [r3 ] = km (a ,a ,...,a 1 2 i ,X,...,am ,b1 ) Pm = x + Pj=1 aj − ai+1 + b1 m = x + j=1 j − i − 1 + m + 1 −i+m = x + m(m+1) 2 Therefore, Pl3 ,r3 = [l3 ] − [r3 ] = 1 > 0. 5. Rules km (a01 ,a02 ,...,a0i ,X,...,a0m ,b1 ) -> km (a01 ,a02 ,...,X,a0i+1 ,...,a0m ,b1 ) for i ∈ {1, . . . , m − 1}: 0 0 0 0 [l4 ] = [km (a i ,X,...,am ,b1 )] P1m,a2 ,...,a 0 0 = x + Pj=1 aj − ai+1 + b1 m = x + Pj=1 (m − j + 1) − (m − i − 1 + 1) + m + 1 m = x + j=1 j + i + 1 m(m+1) +i+1 = x+ 2 0 0 0 0 [r3 ] = km (a 1 ,a2 ,...,X,ai+1 ,...,am ,b1 )) P m 0 0 = x + Pj=1 aj − ai + b1 m = x + Pj=1 (m − j + 1) − (m − i + 1) + m + 1 m = x + j=1 j + i = x + m(m+1) +i 2 Therefore, Pl4 ,r4 = [l4 ] − [r4 ] = 1 > 0. 6. Rules km (X,...,X,b1 ) -> km (g(X),b2 ,...,b2 ): [l5 ] = [km (X,...,X,b1 )] = mx + b1 = mx + m + 1 and [r5 ] = [km (g(X),b2 ,...,b2 )] = g1 x + g0 + mb2 = mx + m. Thus, Pl5 ,r5 = [l5 ] − [r5 ] = 1 > 0. Polynomials with real, rational, and integer coefficients 19 7. Rules km (g(X),b3 ,...,b3 ) -> km (X,...,X,b4 ): [l6 ] = [km (g(X),b3 ,...,b3 )] = g1 x + g0 + mb3 = mx + m and [r6 ] = [km (X,...,X,b4 )] = mx + b4 = mx + 1. Thus, Pl6 ,r6 = [l6 ] − [r6 ] = m − 1 > 0 if m ∈ N2 . 3 8. Rule f(f(f(X))) -> k2 (X,X,X): [l7 ] = [f(f(f(X)))] = m 23 x and [r7 ] = 3 3 [k2 (X,X,X)] = 3x. Thus, Pl7 ,r7 = [l7 ] − [r7 ] = ( m8 − 3)x = m 8−24 x > 0 for all m ∈ N3 and x ≥ 1. 9. Rule h(h(X)) -> k2 (X,X,X): [l8 ] = [h(h(X))] = 4x + 3 and [r8 ] = [k2 (X,X,X)] = 3x. Thus, Pl8 ,r8 = [l8 ] − [r8 ] = x + 3 > 0 for all x ≥ 1. m+1 10. Rule fm+1 (X) -> km (X,...,X,X): [l9 ] = [fm+1 (X)] = m 2m+1 x and [r9 ] = m+1 [km (X,...,X,X)] = (m + 1)x. Thus, Pl9 ,r9 = [l9 ] − [r9 ] = ( m 2m+1 − (m + m m+1 −1)−1 −m−1 1))x = m 2m+1 x = m(m2m+1 x > 0 for all m ∈ N2 and x ≥ 1. Note that this cannot be proved if the domain of the polynomial algebra is R0 . m+1 11. Rule hd 2 e (X) -> km (X,...,X,X): by Lemma 2, m+1 m+1 m+1 1 − 2d 2 e (X)] = 2 x+ = 2d 2 e x + 2 d 2 e − 1 [l10 ] = [h 1−2 and [r10 ] = [km (X,...,X,X)] = (m + 1)x. Thus, Pl10 ,r10 = [l10 ] − [r10 ] = m+1 m+1 (2d 2 e − m − 1)x + 2d 2 e − 1 > 0 for all m ∈ N2 and x ≥ 1. d m+1 2 e d m+1 2 e Theorem 2 shows that there is an infinite number of TRSs that can be proved polynomially terminating by using linear polynomial interpretations with rational coefficients. In fact, we can say more. Corollary 3 There is a TRS which can be proved polynomially terminating by using a polynomial interpretation with rational coefficients, whereas it cannot be proved polynomially terminating by using a polynomial interpretation which only uses integer coefficients. Proof Theorem 2 shows that R3 can be proved polynomially terminating by using a polynomial interpretation with rational coefficients. Let A be a polynomial algebra consisting of polynomials which only use integer coefficients. If A is compatible with R3 , then by Proposition 8, ng ≤ 3 and nh ≤ 2. If nh = 1, then by Proposition 9 (applied to Kg,3 ∪ L03 ), we have ng = 1. Hence, by Proposition 6, which establishes nh nf = ng , we have nf = 1. If nh = 2, then since nh nf = ng ≤ 3 (Proposition 6), it must be nf = 1. However, this contradicts Proposition 9 (applied to Kh,2 ∪ L02 ), which imposes nh = 1. Thus, the only possibility is nf = ng = nh = 1. By Proposition 9, nk3 = 1, ng = 1, g1 = 3, nk2 = 1, nh = 1, and h1 = 2. Thus, by Proposition 7, f1 = hg11 = 32 6∈ Z. Note that R3 (for Rm as in Theorem 2 and m = 3) is the TRS RQ in the introduction. Although Corollary 3 is weaker than Corollary 2, we could naı̈vely argue that there is also an infinite number of TRSs which can be proved terminating with polynomial interpretations with rational coefficients, whereas they cannot be proved with polynomials with integer coefficients: just consider the disjoint union of R3 and any polynomially terminating TRS R. However, the following result can be thought of as somehow equivalent ‘in practice’ to Corollary 2. 20 Salvador Lucas Corollary 4 Let m ∈ N3 be an odd natural number and Rm = S ∪ Kg,m ∪ Kh,2 ∪ L0m ∪ L02 . Then, 1. There is no linear polynomial algebra which only uses integer coefficients which is compatible with Rm . 2. Let A be a polynomial algebra with integer coefficients that is compatible with Rm . Then, nh , nf ≥ 2 and 4 ≤ ng ≤ m. Proof 1. Assume that A is a linear polynomial algebra which only uses integer coefficients and which is compatible with Rm . Since A is linear, by Proposition 9 (applied to both Kh,2 ∪ L02 and Kg,3 ∪ L03 ), we have h1 = 2 and g1 = m. Thus, by linearity of A and by Proposition 7, f1 = hg11 = m 2 6∈ Z. This leads to a contradiction. 2. By Proposition 8, in such an algebra, nh ≤ 2 and ng ≤ m. By Proposition 6, nh nf = ng . If either nh = 1 or nf = 1, then by Proposition 9, we would obtain nf = ng = nh = nk2 = nkm = 1. Thus, A is linear. However, this contradicts item 1 above. Therefore, it must be nh = 2 and nf ≥ 2. By Proposition 6, nh nf = ng , thus, ng ≥ 4. Tools implementing automatic proofs of polynomial termination by means of polynomial interpretations with integer coefficients (e.g., AProVE [22], CiME [12], and TTT [25]) only use restricted versions of polynomial interpretations. Typically, such tools only generate linear, simple, and simple-mixed polynomial interpretations (according to Steinbach’s classification, see [37, 38]). In all of them, the maximum allowed degree of a polynomial interpreting a monadic symbol is 2. This means that no such tool could automatically prove termination of Rm for any odd m ∈ N3 because, according to Corollary 4, the generation of a polynomial [g] of degree ≥ 4 would be necessary5 . 6 Related work Polynomial interpretations have been extensively investigated as suitable tools to address different issues in term rewriting. Polynomial interpretations with real coefficients have been considered in a number of these works. For instance, the limits of polynomial interpretations regarding their ability to prove termination of rewrite systems were first investigated in [24] by considering the derivational complexity of polynomially terminating TRSs, i.e., the upper bound of the lengths of arbitrary (but finite) derivations issued from a given term (of size n) in a terminating TRS. Hofbauer has shown that the derivational complexity of a terminating TRS can be better approximated if polynomial interpretations over the reals (instead of the more traditional polynomial interpretations over the naturals) are used to prove termination of the TRS [23]. Complexity analysis of first order functional programs (or TRSs) has also been successfully addressed by using polynomial interpretations [4–6, 9]. The 5 AProVE, however, permits us to freely fix the maximum degree of polynomials and could be used to overcome this limitation. Polynomials with real, rational, and integer coefficients 21 aim of these papers is to classify TRSs in different (time or space) complexity classes according to the (least) kind of polynomial interpretation which is (weakly) compatible with the TRS. Although polynomial interpretations with real coefficients are considered in some approaches, no discussion about the relative power of polynomial interpretations with integer coefficients (as in [5]) and real coefficients (as in [6]) is made6 . Regarding proofs of termination in connection to polynomial orderings, let us consider the work by Ursula Martin and her group [11, 33, 36] in more detail. Martin’s group has investigated how to express total reduction orderings as suitable extensions of weight orderings. A weight order can be seen as a polynomial ordering induced by strongly linear polynomials, x1 +· · ·+xn +w, where w ∈ R is called a weight. Cropper and Martin have proved that for every polynomial reduction ordering > on monadic terms, there is a weight order >wt such that > is an extension of >wt , i.e., >wt ⊆> [11]. For arbitrary polynomial orderings on monadic terms built from only two function symbols, Cropper and Martin showed how to explicitly obtain them. They even use transcendental real numbers in weights. It is not clear, however, whether real numbers of this kind play a real role in the polynomial proof of termination of TRSs. Assume that a given polynomial ordering > proves termination of a TRS R. Showing that > can be expressed as a suitable extension of a weight ordering which uses transcendental weights does not imply there cannot be other polynomial interpretations using ‘simpler’ coefficients which are still valid for proving termination of the same TRS R; this problem is not addressed in [11, 33, 36]. For instance, termination of the following TRS R: g(g(g(g(X)))) -> f(X) f(X) -> g(g(g(X))) can be proved by using the polynomial ordering > induced by the following (linear) polynomial interpretation over the rationals (computed by mu-term): [f](x) = 4x + 3 [g](x) = 32 x + 1 2 According to [11, Table 2], > is of type ÂpolD , in Cropper and Martin’s classification. This means that > can be described as the lexicographic combination of a weight order & followed by a lexicographic path ordering. The weight ordering & is induced by the strongly linear polynomial interpretation [f]0 (x) = x + wf and [g]0 (x) = x + wg , where wf = ln 4 and wf = ln 23 (see also [11, Definition 3.6]). Both wf and wg are transcendental real numbers7 . Indeed, termination of R can also be proved by using this interpretation: 4 4 81 [l1 ]0 − [r1 ]0 = 4 ln 23 − ln 4 = ln 234 4 = ln 236 = ln 64 >0 3 33 25 32 0 0 [l2 ] − [r2 ] = ln 4 − 3 ln 2 = ln 4 − ln 23 = ln 33 = ln 27 >0 6 In fact, [6, Theorem 31], which establishes that “programs which are compatible with a polynomial interpretation (over the reals!) compute exactly PTime”, is given as a result proved in [5], where only polynomials with non-negative integer coefficients are considered. 7 By Hermite-Lindemann’s Theorem (see [27, Appendix 1, Corollary 1]), ex is transcendental for every algebraic number x 6= 0. Since eln 4 = 4 is obviously algebraic, it follows that ln 4 (and similarly ln 23 ) is transcendental. 22 Salvador Lucas (i.e., the strict part > of & is a reduction ordering which is compatible with the rules, and we do not need to use the second component of the lexicographic combination). However, R can also be proved terminating by using the following interpretation over the naturals (again computed by mu-term): [f]00 (x) = x + 7 [g]00 (x) = x + 2 which, in fact, corresponds to an ordering of type ÂpolF (see [11, Table 2] again) whose weight ordering given according to [11] actually coincides with the induced by this interpretation (note that it is strongly linear already). Therefore, we conclude that, even though different orderings proving termination of the same TRS can have different Scott/Cropper/Martin weight orderings where even non-algebraic real numbers are involved (as in []0 above), this does not imply that the use of such numbers in polynomial interpretations is actually necessary (as exemplified by [ ]00 ). 7 Conclusions We have proven that there are TRSs that can be proved polynomially terminating by using polynomial interpretations with real algebraic integer coefficients, whereas the proof cannot be achieved if polynomials only contain rational coefficients. We have also proven that there are TRSs that can be proved polynomially terminating by using polynomial interpretations with rational coefficients, whereas the proof cannot be achieved if polynomials only contain integer coefficients. Our results suggest that polynomial interpretations over the reals or rationals should be more thoroughly considered as suitable tools for proving termination of rewriting. In [30, Proposition 8], we already proved that such polynomial interpretations are strictly better than polynomial interpretations with integer coefficients when the generation of non-monotonic orderings is considered (as required, for instance, in the dependency pairs approach to termination of rewriting [1]). Now we have proven that this is also the case when monotonic orderings are necessary (e.g., for generating reduction polynomial orderings). Polynomials with real (or rational) coefficients, however, are not used in any of the most recent termination tools (e.g., AProVE,CiME, and TTT) with the remarkable exception of mu-term. In fact, we used mu-term to find out which polynomial interpretation proves the termination of RQ in the introduction. Although a direct proof of RQ was not possible, a proof of termination of R0Q = S ∪ Kh,2 ∪ Kg,3 can be directly obtained by mu-term: [h](X) = 2.X + 1 [f](X) = 3/2.X [g](X) = 3.X [c](X) = X + 2 [k2](X1,X2,X3) = X1 + X2 + X3 [a1] = 1/2 [a2’] = 1 [b3] = 1 [a2] = 1 [a3’] = 1/2 [b4] = 1 [a3] = 2 [b1] = 4 [a1’] = 2 [b2] = 1 [k3](X1,X2,X3,X4) = X1 + X2 + X3 + X4 The obtained polynomial interpretation is basically the same; the differences introduced by the automatic processing carried out by mu-term are not relevant in this setting. Moreover, although mu-term is not able to obtain the polynomial interpretation when RQ is loaded in the tool, it is easy to verify that this polynomial interpretation also proves termination of RQ . Polynomials with real, rational, and integer coefficients 23 7.1 Future work There are a number of interesting issues that remain to be solved with respect to polynomial interpretations with real coefficients. For instance: the examples synthesized here (see Theorems 1 and 2) have been specifically built to show the deficiencies of polynomials with integer/rational coefficients regarding the use of polynomials with rational/real algebraic integer coefficients. The following questions could be studied: 1. Are there more practical examples of these deficiencies? 2. In termination proofs, how important are polynomials with rational or real coefficients in comparison to polynomials that only use integer coefficients? 3. Are there more general classes of real numbers (e.g., transcendental numbers, decidable real numbers [3], etc.) that are relevant (and sufficient) when used as coeficients of polynomials in termination problems? As far as future theoretical developments, we believe that concepts and tools coming from real algebraic geometry [7] should be further explored and applied in termination of TRSs when polynomial orderings are used. This idea is not really new. Martin and Shand [33] already suggested that Gröbner basis and polynomial ideals [10] should be seriously considered as a uniform framework for understanding polynomial termination proofs. Rouyer’s PhD Thesis has already explored the use of Sturm’s Theorem to develop an algorithm to decide whether the sign of a given polynomial with integer coefficients changes on a given n-dimensional rectangle [35]. This property is then used in proofs of polynomial termination of TRSs. We think that the proof method used here is deserving of some interest. It shows a kind of encoding of (algebraic) numbers as TRSs, which could be useful in other contexts. √ Although only a subset of such numbers has been encoded here (namely m 2 and m 2 for m ≥ 2), we think that the structure of the ‘base’ TRSs Sm in Section 4 and S in Section 5 could be generalized to a more expressive setting. This is an interesting subject for future work. Finally, as argued in [30], the use of polynomials over the reals or rationals in proofs of termination is not far from the current procedures implemented in existing termination tools for dealing with polynomials with non-negative integer coefficients (see [30, Remark 3]). However, that further research investigating appropriate analysis and implementation techniques that are able to detect the need (or convenience) of real and rational coefficients is necessary. Acknowledgements I thank Nachum Dershowitz for the e-mail exchange about this subject, and Pierre Lescanne for his many helpful remarks and for kindly providing a copy of Rouyer’s PhD thesis [35]. I also thank Jürgen Giesl and José Meseguer for the many pointers to related work and suggestions for future improvements. Finally, I am very grateful to the anonymous referees for their helpful remarks. This work has been partially supported by the EU (FEDER) and the Spanish MEC, under grants TIN 2004-7943-C04-02 and HU 2003-0003, the Generalitat Valenciana under grant GV03/25, and the ICT for EU-India Cross-Cultural Dissemination ALA/95/23/2003/077-054 project. 24 Salvador Lucas References 1. Arts, T., and Giesl, J. Termination of Term Rewriting Using Dependency Pairs Theoretical Computer Science, 236:133-178, 2000. 2. Basu, S., Pollack, R., and Roy, M.-F. On the Combinatorial and Algebraic Complexity of Quantifier Elimination. Journal of the ACM 43(6):1002-1045, 1996. 3. Beeson, M.J. Foundations of Constructive Mathematics. Springer-Verlag, Berlin, 1985. 4. Bonfante, G., Cichon, A., Marion, J.-Y., and Touzet, H. Complexity classes and rewrite systems with polynomial interpretation. In G. Gottlob, E. Grandjean, and K. Seyr, editors, Proc. of 12th International Workshop on Computer Science Logic, CSL ’98, LNCS 1584:372-384, 1998. 5. Bonfante, G., Cichon, A., Marion,J.-Y., Touzet, H. Algorithms with polynomial interpretation termination proof. Journal of Functional Programming 11(1):3353, 2001. 6. Bonfante, G., Marion, J.-Y., and Moyen, J.Y. Quasi-interpretations and Small Space Bounds. In J. Giesl, editor, Proc. of 16th International Conference on Rewriting Techniques and Applications, RTA’05, LNCS 3467:150-164, 2005. 7. Bochnak, J., Coste, M., and Roy, M-F. Real Algebraic Geometry. SpringerVerlag, Berlin, 1998. 8. ben Cherifa, A., and Lescanne, P. Termination of rewriting systems by polynomial interpretations and its implementation. Science of Computer Programming, 9(2):137-160, 1987. 9. Cichon A., and Lescanne, P. Polynomial interpretations and the complexity of algorithms. In D. Kapur, editor, Proc. of 11th International Conference on Automated Deduction, CADE’92, LNAI 607:139-147, Springer-Verlag, Berlin, 1992. 10. Cox, D., Little, J., and O’Shea, D. Ideals, Varieties, and Algorithms. SpringerVerlag, Berlin, 1997. 11. Cropper, N., and Martin, U. The Classification of Polynomial Orderings on Monadic Terms. Applicable Algebra in Engineering, Communication and Computing, 12:197-226, 2001. 12. Contejean, E., Marché, C., Monate, B., and Urbain, X. Proving termination of rewriting with CiME. In A. Rubio, editor, Proc. of 6th International Workshop on Termination, WST’03, pages 71-73, Technical Report DSIC II/15/03, Valencia, Spain, 2003. Available at http://cime.lri.fr. 13. Contejean, E., Marché, C., Tomás, A.-P., and Urbain, X. Mechanically proving termination using polynomial interpretations. Journal of Automated Reasoning, to appear, 2005. 14. Collins, G.E. Quantifier Elimination for Real Closed Fields by Cyllindrical Algebraic Decomposition. In H. Barkhage, editor, Proc. of 2nd GI Conference on Automata Theory and Formal Languages, LNCS 33:134-183, Springer-Verlag, Berlin, 1975. 15. Dauchet, M. Simulation of Turing machines by a regular rewrite rule. Theoretical Computer Science, 103(2):409–420, 1992. 16. Dedekind, R. Theory of Algebraic Integers. Cambridge University Press, 1996. 17. Dershowitz, N. A note on simplification orderings. Information Processing Letters, 9(5):212-215, 1979. 18. Dershowitz, N. Personal communication. March 2004. 19. Giesl, J. Generating Polynomial Orderings for Termination Proofs. In J. Hsiang, editor, Proc. of 6th International Conference on Rewriting Techniques and Applications, RTA’95, LNCS 914:426-431, Springer-Verlag, Berlin, 1995. 20. Giesl, J. Generating Polynomial Orderings for Termination Proofs. Technical Report IBN 95/23, Technische Hochschule Darmstadt, 18 pages, 1995. 21. Giesl, J. POLO - A System for Termination Proofs using Polynomial Orderings. Technical Report IBN 95/24, Technische Hochschule Darmstadt, 27 pages, 1995. Polynomials with real, rational, and integer coefficients 25 22. Giesl, J., Thiemann, R., Schneider-Kamp, P., and Falke, S. Automated Termination Proofs with AProVE. In V. van Oostrom, editor, Proc. of 15h International Conference on Rewriting Techniques and Applications, RTA’04, LNCS 3091:210-220, Springer-Verlag, Berlin, 2004. Available at http://www-i2. informatik.rwth-aachen.de/AProVE. 23. Hofbauer, D. Termination Proofs by Context-Dependent Interpretations. In A. Middeldorp, editor, Proc. of 12th International Conference on Rewriting Techniques and Applications, RTA’01, LNCS 2051:108-121. Springer-Verlag, Berlin, 2001. 24. Hofbauer D., and Lautemann, C. Termination proofs and the length of derivations. In N. Dershowitz, editor, Proc. of the 3rd International Conference on Rewriting Techniques and Applications, RTA’89, LNCS 355:167-177. SpringerVerlag, Berlin, 1989. 25. Hirokawa N., and Middeldorp, A. Tyrolean Termination Tool. In J. Giesl, editor, Proc. of 16th International Conference on Rewriting Techniques and Applications, RTA’05, LNCS 3467:175-184, 2005. Available at http://cl2-informatik.uibk.ac.at. 26. Iturriaga, R. Contributions to mechanical mathematics. PhD Thesis, CarnegieMellon University, Pittsburgh, PA, USA, 1967. 27. Lang, S. Algebra. Springer-Verlag, Berlin, 2004. 28. Lankford, D.S. On proving term rewriting systems are noetherian. Technical Report, Louisiana Technological University, Ruston, LA, 1979. 29. Lucas, S. MU-TERM: A Tool for Proving Termination of Context-Sensitive Rewriting In V. van Oostrom, editor, Proc. of 15h International Conference on Rewriting Techniques and Applications, RTA’04, LNCS 3091:200209, Springer-Verlag, Berlin, 2004. Available at http://www.dsic.upv.es/ ~slucas/csr/termination/muterm. 30. Lucas, S. Polynomials over the reals in proofs of termination: from theory to practice. RAIRO Theoretical Informatics and Applications, to appear, 2005. 31. Manna, Z., and Ness, S. On the termination of Markov algorithms. In Proc. of the Third Hawaii International Conference on System Science, pages 789-792, 1970. 32. Marion, J.Y. Analysing the implicit complexity of programs. Information and Computation 183(1):2-18, 2003. 33. Martin, U., and Shand, D. Invariants, Patterns and Weights for Ordering Terms. Journal of Symbolic Computation, 29:921-957, 2000. 34. Matijasevich, Y. Enumerable sets are Diophantine. Soviet Mathematics (Dokladi), 11(2):354-357, 1970. 35. Rouyer, J. Calcul formel en géométrie algébrique réelle appliqué à la terminaison des systèmes de réécriture. Université de Nancy, I, PhD Thesis, 1991. 36. Scott, E.A. Weights for total division orderings on strings. Theoretical Computer Science 135(2):345-359, 1994. 37. Steinbach, J. Generating Polynomial Orderings. Information Processing Letters 49:85-93, 1994. 38. Steinbach, J. Termination of Rewriting - Extensions, Comparison and Automatic Generation of Simplification Orderings. PhD Thesis. Fachbereich Informatik, Universität Kaiserslautern, Jan 1994. 39. Tarski, A. A Decision Method for Elementary Algebra and Geometry. Second Edition. University of California Press, Berkeley, 1951. 40. TeReSe, editor, Term Rewriting Systems, Cambridge University Press, 2003. 41. Thiemann, R., Giesl, J., Schneider-Kamp, P. Improved Modular Termination Proofs Using Dependency Pairs. In D.A. Basin and M. Rusinowitch, editors, Proc. of 2nd International Joint Conference on Automated Reasoning, IJCAR’04, LNCS 3097:75-90, Springer-Verlag, Berlin, 2004.
© Copyright 2026 Paperzz