On the relative power of polynomials with real, rational, and integer

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.