TIMEOUT

The TRS could not be proven terminating. The proof attempt took 60045 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (10957ms).
 | – Problem 2 was processed with processor SubtermCriterion (1ms).
 | – Problem 3 was processed with processor SubtermCriterion (1ms).
 | – Problem 4 was processed with processor SubtermCriterion (1ms).
 | – Problem 5 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (1838ms), PolynomialLinearRange4iUR (2021ms), DependencyGraph (1838ms), PolynomialLinearRange4iUR (2032ms), DependencyGraph (1970ms), PolynomialLinearRange4iUR (3333ms), DependencyGraph (1842ms), PolynomialLinearRange8NegiUR (10000ms), DependencyGraph (1840ms), ReductionPairSAT (timeout)].
 | – Problem 6 was processed with processor SubtermCriterion (1ms).
 |    | – Problem 14 remains open; application of the following processors failed [DependencyGraph (5ms), PolynomialLinearRange4iUR (1ms), DependencyGraph (4ms), PolynomialLinearRange4iUR (18ms), DependencyGraph (4ms), PolynomialLinearRange4iUR (10ms), DependencyGraph (4ms), PolynomialLinearRange8NegiUR (26ms), DependencyGraph (4ms)].
 | – Problem 7 was processed with processor SubtermCriterion (1ms).
 | – Problem 8 was processed with processor SubtermCriterion (1ms).
 | – Problem 9 was processed with processor SubtermCriterion (1ms).
 | – Problem 10 was processed with processor SubtermCriterion (2ms).
 | – Problem 11 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 15 remains open; application of the following processors failed [DependencyGraph (5ms), PolynomialLinearRange4iUR (13ms), DependencyGraph (5ms), PolynomialLinearRange4iUR (12ms), DependencyGraph (4ms), PolynomialLinearRange4iUR (1ms), DependencyGraph (4ms), PolynomialLinearRange8NegiUR (37ms), DependencyGraph (5ms)].
 | – Problem 12 was processed with processor SubtermCriterion (1ms).
 |    | – Problem 16 was processed with processor PolynomialLinearRange4iUR (54ms).
 |    |    | – Problem 19 was processed with processor PolynomialLinearRange4iUR (25ms).
 | – Problem 13 was processed with processor SubtermCriterion (1ms).
 |    | – Problem 17 was processed with processor PolynomialLinearRange4iUR (124ms).
 |    |    | – Problem 18 was processed with processor PolynomialLinearRange4iUR (55ms).

The following open problems remain:



Open Dependency Pair Problem 5

Dependency Pairs

active#(sel(0, cons(X, Y)))mark#(X)mark#(dbls(X))mark#(X)
mark#(dbls(X))active#(dbls(mark(X)))mark#(sel1(X1, X2))active#(sel1(mark(X1), mark(X2)))
mark#(01)active#(01)active#(dbl(s(X)))mark#(s(s(dbl(X))))
mark#(quote(X))mark#(X)mark#(dbl1(X))active#(dbl1(mark(X)))
active#(dbl1(s(X)))mark#(s1(s1(dbl1(X))))active#(sel(s(X), cons(Y, Z)))mark#(sel(X, Z))
mark#(nil)active#(nil)active#(dbls(cons(X, Y)))mark#(cons(dbl(X), dbls(Y)))
active#(indx(nil, X))mark#(nil)mark#(indx(X1, X2))active#(indx(mark(X1), X2))
mark#(sel(X1, X2))mark#(X2)active#(quote(dbl(X)))mark#(dbl1(X))
mark#(quote(X))active#(quote(mark(X)))active#(indx(cons(X, Y), Z))mark#(cons(sel(X, Z), indx(Y, Z)))
mark#(sel(X1, X2))mark#(X1)mark#(dbl1(X))mark#(X)
active#(quote(s(X)))mark#(s1(quote(X)))mark#(0)active#(0)
active#(dbl1(0))mark#(01)active#(quote(0))mark#(01)
mark#(sel1(X1, X2))mark#(X2)mark#(dbl(X))active#(dbl(mark(X)))
active#(quote(sel(X, Y)))mark#(sel1(X, Y))mark#(indx(X1, X2))mark#(X1)
mark#(from(X))active#(from(X))active#(from(X))mark#(cons(X, from(s(X))))
mark#(sel(X1, X2))active#(sel(mark(X1), mark(X2)))mark#(s(X))active#(s(X))
mark#(dbl(X))mark#(X)mark#(cons(X1, X2))active#(cons(X1, X2))
mark#(s1(X))mark#(X)active#(sel1(s(X), cons(Y, Z)))mark#(sel1(X, Z))
active#(dbl(0))mark#(0)mark#(s1(X))active#(s1(mark(X)))
mark#(sel1(X1, X2))mark#(X1)active#(dbls(nil))mark#(nil)
active#(sel1(0, cons(X, Y)))mark#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, nil, cons




Open Dependency Pair Problem 14

Dependency Pairs

cons#(X1, active(X2))cons#(X1, X2)cons#(X1, mark(X2))cons#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil




Open Dependency Pair Problem 15

Dependency Pairs

sel1#(X1, mark(X2))sel1#(X1, X2)sel1#(X1, active(X2))sel1#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(s1(X))s1#(mark(X))mark#(dbls(X))dbls#(mark(X))
active#(dbl(s(X)))s#(dbl(X))mark#(01)active#(01)
active#(dbls(cons(X, Y)))cons#(dbl(X), dbls(Y))dbls#(mark(X))dbls#(X)
mark#(quote(X))mark#(X)active#(dbl1(s(X)))mark#(s1(s1(dbl1(X))))
active#(indx(nil, X))mark#(nil)mark#(indx(X1, X2))active#(indx(mark(X1), X2))
mark#(sel(X1, X2))mark#(X1)indx#(mark(X1), X2)indx#(X1, X2)
mark#(dbl1(X))mark#(X)s1#(active(X))s1#(X)
active#(sel(s(X), cons(Y, Z)))sel#(X, Z)active#(dbl1(0))mark#(01)
active#(dbl(s(X)))s#(s(dbl(X)))active#(quote(s(X)))quote#(X)
mark#(dbl(X))active#(dbl(mark(X)))active#(quote(sel(X, Y)))mark#(sel1(X, Y))
mark#(indx(X1, X2))indx#(mark(X1), X2)active#(from(X))mark#(cons(X, from(s(X))))
sel#(X1, mark(X2))sel#(X1, X2)quote#(mark(X))quote#(X)
sel#(X1, active(X2))sel#(X1, X2)active#(dbl(0))mark#(0)
mark#(s1(X))active#(s1(mark(X)))active#(quote(s(X)))s1#(quote(X))
active#(sel1(0, cons(X, Y)))mark#(X)mark#(dbl1(X))dbl1#(mark(X))
active#(sel(0, cons(X, Y)))mark#(X)active#(dbl1(s(X)))s1#(s1(dbl1(X)))
cons#(mark(X1), X2)cons#(X1, X2)mark#(cons(X1, X2))cons#(X1, X2)
from#(mark(X))from#(X)mark#(from(X))from#(X)
active#(indx(cons(X, Y), Z))indx#(Y, Z)active#(dbl(s(X)))mark#(s(s(dbl(X))))
sel1#(X1, mark(X2))sel1#(X1, X2)active#(dbls(cons(X, Y)))mark#(cons(dbl(X), dbls(Y)))
active#(quote(sel(X, Y)))sel1#(X, Y)cons#(X1, mark(X2))cons#(X1, X2)
active#(dbls(cons(X, Y)))dbl#(X)mark#(0)active#(0)
indx#(X1, active(X2))indx#(X1, X2)mark#(sel1(X1, X2))mark#(X2)
cons#(active(X1), X2)cons#(X1, X2)mark#(cons(X1, X2))active#(cons(X1, X2))
mark#(s1(X))mark#(X)active#(quote(dbl(X)))dbl1#(X)
mark#(sel1(X1, X2))sel1#(mark(X1), mark(X2))active#(dbls(nil))mark#(nil)
active#(from(X))from#(s(X))quote#(active(X))quote#(X)
mark#(dbls(X))active#(dbls(mark(X)))dbls#(active(X))dbls#(X)
mark#(quote(X))quote#(mark(X))mark#(sel1(X1, X2))active#(sel1(mark(X1), mark(X2)))
sel1#(X1, active(X2))sel1#(X1, X2)dbl1#(active(X))dbl1#(X)
mark#(dbl(X))dbl#(mark(X))active#(quote(dbl(X)))mark#(dbl1(X))
active#(dbl(s(X)))dbl#(X)active#(quote(s(X)))mark#(s1(quote(X)))
mark#(sel(X1, X2))sel#(mark(X1), mark(X2))mark#(sel(X1, X2))active#(sel(mark(X1), mark(X2)))
mark#(s(X))active#(s(X))dbl1#(mark(X))dbl1#(X)
active#(indx(cons(X, Y), Z))cons#(sel(X, Z), indx(Y, Z))active#(from(X))s#(X)
sel#(active(X1), X2)sel#(X1, X2)cons#(X1, active(X2))cons#(X1, X2)
active#(dbl1(s(X)))s1#(dbl1(X))sel1#(mark(X1), X2)sel1#(X1, X2)
from#(active(X))from#(X)indx#(active(X1), X2)indx#(X1, X2)
sel#(mark(X1), X2)sel#(X1, X2)mark#(dbls(X))mark#(X)
active#(dbls(cons(X, Y)))dbls#(Y)active#(dbl1(s(X)))dbl1#(X)
mark#(dbl1(X))active#(dbl1(mark(X)))active#(sel(s(X), cons(Y, Z)))mark#(sel(X, Z))
mark#(nil)active#(nil)active#(sel1(s(X), cons(Y, Z)))sel1#(X, Z)
active#(indx(cons(X, Y), Z))sel#(X, Z)mark#(sel(X1, X2))mark#(X2)
active#(from(X))cons#(X, from(s(X)))mark#(quote(X))active#(quote(mark(X)))
active#(indx(cons(X, Y), Z))mark#(cons(sel(X, Z), indx(Y, Z)))sel1#(active(X1), X2)sel1#(X1, X2)
s1#(mark(X))s1#(X)active#(quote(0))mark#(01)
mark#(indx(X1, X2))mark#(X1)mark#(from(X))active#(from(X))
dbl#(mark(X))dbl#(X)mark#(dbl(X))mark#(X)
indx#(X1, mark(X2))indx#(X1, X2)s#(mark(X))s#(X)
mark#(s(X))s#(X)active#(sel1(s(X), cons(Y, Z)))mark#(sel1(X, Z))
s#(active(X))s#(X)mark#(sel1(X1, X2))mark#(X1)
dbl#(active(X))dbl#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


The following SCCs where found

dbls#(active(X)) → dbls#(X)dbls#(mark(X)) → dbls#(X)

indx#(X1, active(X2)) → indx#(X1, X2)indx#(active(X1), X2) → indx#(X1, X2)
indx#(mark(X1), X2) → indx#(X1, X2)indx#(X1, mark(X2)) → indx#(X1, X2)

from#(active(X)) → from#(X)from#(mark(X)) → from#(X)

quote#(mark(X)) → quote#(X)quote#(active(X)) → quote#(X)

s1#(active(X)) → s1#(X)s1#(mark(X)) → s1#(X)

dbl#(mark(X)) → dbl#(X)dbl#(active(X)) → dbl#(X)

cons#(X1, active(X2)) → cons#(X1, X2)cons#(mark(X1), X2) → cons#(X1, X2)
cons#(X1, mark(X2)) → cons#(X1, X2)cons#(active(X1), X2) → cons#(X1, X2)

s#(mark(X)) → s#(X)s#(active(X)) → s#(X)

dbl1#(active(X)) → dbl1#(X)dbl1#(mark(X)) → dbl1#(X)

sel#(active(X1), X2) → sel#(X1, X2)sel#(mark(X1), X2) → sel#(X1, X2)
sel#(X1, active(X2)) → sel#(X1, X2)sel#(X1, mark(X2)) → sel#(X1, X2)

active#(sel(0, cons(X, Y))) → mark#(X)mark#(dbls(X)) → mark#(X)
mark#(dbls(X)) → active#(dbls(mark(X)))mark#(sel1(X1, X2)) → active#(sel1(mark(X1), mark(X2)))
mark#(01) → active#(01)active#(dbl(s(X))) → mark#(s(s(dbl(X))))
mark#(quote(X)) → mark#(X)mark#(dbl1(X)) → active#(dbl1(mark(X)))
active#(dbl1(s(X))) → mark#(s1(s1(dbl1(X))))active#(sel(s(X), cons(Y, Z))) → mark#(sel(X, Z))
mark#(nil) → active#(nil)active#(dbls(cons(X, Y))) → mark#(cons(dbl(X), dbls(Y)))
active#(indx(nil, X)) → mark#(nil)mark#(sel(X1, X2)) → mark#(X2)
mark#(indx(X1, X2)) → active#(indx(mark(X1), X2))active#(quote(dbl(X))) → mark#(dbl1(X))
mark#(quote(X)) → active#(quote(mark(X)))mark#(sel(X1, X2)) → mark#(X1)
active#(indx(cons(X, Y), Z)) → mark#(cons(sel(X, Z), indx(Y, Z)))mark#(dbl1(X)) → mark#(X)
active#(quote(s(X))) → mark#(s1(quote(X)))mark#(0) → active#(0)
active#(dbl1(0)) → mark#(01)active#(quote(0)) → mark#(01)
mark#(dbl(X)) → active#(dbl(mark(X)))mark#(sel1(X1, X2)) → mark#(X2)
active#(quote(sel(X, Y))) → mark#(sel1(X, Y))mark#(from(X)) → active#(from(X))
mark#(indx(X1, X2)) → mark#(X1)mark#(sel(X1, X2)) → active#(sel(mark(X1), mark(X2)))
active#(from(X)) → mark#(cons(X, from(s(X))))mark#(dbl(X)) → mark#(X)
mark#(s(X)) → active#(s(X))mark#(cons(X1, X2)) → active#(cons(X1, X2))
mark#(s1(X)) → mark#(X)active#(sel1(s(X), cons(Y, Z))) → mark#(sel1(X, Z))
active#(dbl(0)) → mark#(0)mark#(s1(X)) → active#(s1(mark(X)))
mark#(sel1(X1, X2)) → mark#(X1)active#(dbls(nil)) → mark#(nil)
active#(sel1(0, cons(X, Y))) → mark#(X)

sel1#(X1, mark(X2)) → sel1#(X1, X2)sel1#(mark(X1), X2) → sel1#(X1, X2)
sel1#(X1, active(X2)) → sel1#(X1, X2)sel1#(active(X1), X2) → sel1#(X1, X2)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

dbl1#(active(X))dbl1#(X)dbl1#(mark(X))dbl1#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

dbl1#(active(X))dbl1#(X)dbl1#(mark(X))dbl1#(X)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

s#(mark(X))s#(X)s#(active(X))s#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

s#(mark(X))s#(X)s#(active(X))s#(X)

Problem 4: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

s1#(active(X))s1#(X)s1#(mark(X))s1#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

s1#(active(X))s1#(X)s1#(mark(X))s1#(X)

Problem 6: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

cons#(X1, active(X2))cons#(X1, X2)cons#(mark(X1), X2)cons#(X1, X2)
cons#(X1, mark(X2))cons#(X1, X2)cons#(active(X1), X2)cons#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

cons#(mark(X1), X2)cons#(X1, X2)cons#(active(X1), X2)cons#(X1, X2)

Problem 7: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

dbl#(mark(X))dbl#(X)dbl#(active(X))dbl#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

dbl#(mark(X))dbl#(X)dbl#(active(X))dbl#(X)

Problem 8: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

from#(active(X))from#(X)from#(mark(X))from#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

from#(active(X))from#(X)from#(mark(X))from#(X)

Problem 9: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

dbls#(active(X))dbls#(X)dbls#(mark(X))dbls#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

dbls#(active(X))dbls#(X)dbls#(mark(X))dbls#(X)

Problem 10: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

quote#(mark(X))quote#(X)quote#(active(X))quote#(X)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

quote#(mark(X))quote#(X)quote#(active(X))quote#(X)

Problem 11: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

sel1#(X1, mark(X2))sel1#(X1, X2)sel1#(mark(X1), X2)sel1#(X1, X2)
sel1#(X1, active(X2))sel1#(X1, X2)sel1#(active(X1), X2)sel1#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

sel1#(mark(X1), X2)sel1#(X1, X2)sel1#(active(X1), X2)sel1#(X1, X2)

Problem 12: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

sel#(active(X1), X2)sel#(X1, X2)sel#(mark(X1), X2)sel#(X1, X2)
sel#(X1, active(X2))sel#(X1, X2)sel#(X1, mark(X2))sel#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

sel#(mark(X1), X2)sel#(X1, X2)sel#(active(X1), X2)sel#(X1, X2)

Problem 16: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

sel#(X1, active(X2))sel#(X1, X2)sel#(X1, mark(X2))sel#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, nil, cons

Strategy


Polynomial Interpretation

There are no usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

sel#(X1, mark(X2))sel#(X1, X2)

Problem 19: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

sel#(X1, active(X2))sel#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Polynomial Interpretation

There are no usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

sel#(X1, active(X2))sel#(X1, X2)

Problem 13: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

indx#(X1, active(X2))indx#(X1, X2)indx#(active(X1), X2)indx#(X1, X2)
indx#(mark(X1), X2)indx#(X1, X2)indx#(X1, mark(X2))indx#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

indx#(active(X1), X2)indx#(X1, X2)indx#(mark(X1), X2)indx#(X1, X2)

Problem 17: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

indx#(X1, active(X2))indx#(X1, X2)indx#(X1, mark(X2))indx#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, nil, cons

Strategy


Polynomial Interpretation

There are no usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

indx#(X1, active(X2))indx#(X1, X2)

Problem 18: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

indx#(X1, mark(X2))indx#(X1, X2)

Rewrite Rules

active(dbl(0))mark(0)active(dbl(s(X)))mark(s(s(dbl(X))))
active(dbls(nil))mark(nil)active(dbls(cons(X, Y)))mark(cons(dbl(X), dbls(Y)))
active(sel(0, cons(X, Y)))mark(X)active(sel(s(X), cons(Y, Z)))mark(sel(X, Z))
active(indx(nil, X))mark(nil)active(indx(cons(X, Y), Z))mark(cons(sel(X, Z), indx(Y, Z)))
active(from(X))mark(cons(X, from(s(X))))active(dbl1(0))mark(01)
active(dbl1(s(X)))mark(s1(s1(dbl1(X))))active(sel1(0, cons(X, Y)))mark(X)
active(sel1(s(X), cons(Y, Z)))mark(sel1(X, Z))active(quote(0))mark(01)
active(quote(s(X)))mark(s1(quote(X)))active(quote(dbl(X)))mark(dbl1(X))
active(quote(sel(X, Y)))mark(sel1(X, Y))mark(dbl(X))active(dbl(mark(X)))
mark(0)active(0)mark(s(X))active(s(X))
mark(dbls(X))active(dbls(mark(X)))mark(nil)active(nil)
mark(cons(X1, X2))active(cons(X1, X2))mark(sel(X1, X2))active(sel(mark(X1), mark(X2)))
mark(indx(X1, X2))active(indx(mark(X1), X2))mark(from(X))active(from(X))
mark(dbl1(X))active(dbl1(mark(X)))mark(01)active(01)
mark(s1(X))active(s1(mark(X)))mark(sel1(X1, X2))active(sel1(mark(X1), mark(X2)))
mark(quote(X))active(quote(mark(X)))dbl(mark(X))dbl(X)
dbl(active(X))dbl(X)s(mark(X))s(X)
s(active(X))s(X)dbls(mark(X))dbls(X)
dbls(active(X))dbls(X)cons(mark(X1), X2)cons(X1, X2)
cons(X1, mark(X2))cons(X1, X2)cons(active(X1), X2)cons(X1, X2)
cons(X1, active(X2))cons(X1, X2)sel(mark(X1), X2)sel(X1, X2)
sel(X1, mark(X2))sel(X1, X2)sel(active(X1), X2)sel(X1, X2)
sel(X1, active(X2))sel(X1, X2)indx(mark(X1), X2)indx(X1, X2)
indx(X1, mark(X2))indx(X1, X2)indx(active(X1), X2)indx(X1, X2)
indx(X1, active(X2))indx(X1, X2)from(mark(X))from(X)
from(active(X))from(X)dbl1(mark(X))dbl1(X)
dbl1(active(X))dbl1(X)s1(mark(X))s1(X)
s1(active(X))s1(X)sel1(mark(X1), X2)sel1(X1, X2)
sel1(X1, mark(X2))sel1(X1, X2)sel1(active(X1), X2)sel1(X1, X2)
sel1(X1, active(X2))sel1(X1, X2)quote(mark(X))quote(X)
quote(active(X))quote(X)

Original Signature

Termination of terms over the following signature is verified: s1, dbl1, mark, dbl, from, 01, dbls, 0, sel1, s, indx, quote, active, sel, cons, nil

Strategy


Polynomial Interpretation

There are no usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

indx#(X1, mark(X2))indx#(X1, X2)