TIMEOUT

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (81ms).
 | – Problem 2 was processed with processor SubtermCriterion (1ms).
 | – Problem 3 was processed with processor SubtermCriterion (1ms).
 |    | – Problem 6 was processed with processor DependencyGraph (1ms).
 | – Problem 4 was processed with processor SubtermCriterion (0ms).
 | – Problem 5 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (1ms), PolynomialLinearRange4iUR (464ms), DependencyGraph (2ms), PolynomialLinearRange8NegiUR (6537ms), DependencyGraph (0ms), ReductionPairSAT (531ms), DependencyGraph (2ms), SizeChangePrinciple (2705ms), ForwardNarrowing (1ms), BackwardInstantiation (1ms), ForwardInstantiation (1ms), Propagation (1ms)].

The following open problems remain:



Open Dependency Pair Problem 5

Dependency Pairs

doublelist#(cons(x, xs)) → doublelist#(del(first(cons(x, xs)), cons(x, xs)))

Rewrite Rules

double(0) → 0double(s(x)) → s(s(double(x)))
del(x, nil) → nildel(x, cons(y, xs)) → if(eq(x, y), x, y, xs)
if(true, x, y, xs) → xsif(false, x, y, xs) → cons(y, del(x, xs))
eq(0, 0) → trueeq(0, s(y)) → false
eq(s(x), 0) → falseeq(s(x), s(y)) → eq(x, y)
first(nil) → 0first(cons(x, xs)) → x
doublelist(nil) → nildoublelist(cons(x, xs)) → cons(double(x), doublelist(del(first(cons(x, xs)), cons(x, xs))))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, false, true, del, doublelist, double, first, cons, eq, nil


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

doublelist#(cons(x, xs)) → del#(first(cons(x, xs)), cons(x, xs))del#(x, cons(y, xs)) → if#(eq(x, y), x, y, xs)
doublelist#(cons(x, xs)) → doublelist#(del(first(cons(x, xs)), cons(x, xs)))del#(x, cons(y, xs)) → eq#(x, y)
doublelist#(cons(x, xs)) → double#(x)double#(s(x)) → double#(x)
eq#(s(x), s(y)) → eq#(x, y)doublelist#(cons(x, xs)) → first#(cons(x, xs))
if#(false, x, y, xs) → del#(x, xs)

Rewrite Rules

double(0) → 0double(s(x)) → s(s(double(x)))
del(x, nil) → nildel(x, cons(y, xs)) → if(eq(x, y), x, y, xs)
if(true, x, y, xs) → xsif(false, x, y, xs) → cons(y, del(x, xs))
eq(0, 0) → trueeq(0, s(y)) → false
eq(s(x), 0) → falseeq(s(x), s(y)) → eq(x, y)
first(nil) → 0first(cons(x, xs)) → x
doublelist(nil) → nildoublelist(cons(x, xs)) → cons(double(x), doublelist(del(first(cons(x, xs)), cons(x, xs))))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, del, double, doublelist, first, nil, eq, cons

Strategy


The following SCCs where found

doublelist#(cons(x, xs)) → doublelist#(del(first(cons(x, xs)), cons(x, xs)))

del#(x, cons(y, xs)) → if#(eq(x, y), x, y, xs)if#(false, x, y, xs) → del#(x, xs)

double#(s(x)) → double#(x)

eq#(s(x), s(y)) → eq#(x, y)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

eq#(s(x), s(y)) → eq#(x, y)

Rewrite Rules

double(0) → 0double(s(x)) → s(s(double(x)))
del(x, nil) → nildel(x, cons(y, xs)) → if(eq(x, y), x, y, xs)
if(true, x, y, xs) → xsif(false, x, y, xs) → cons(y, del(x, xs))
eq(0, 0) → trueeq(0, s(y)) → false
eq(s(x), 0) → falseeq(s(x), s(y)) → eq(x, y)
first(nil) → 0first(cons(x, xs)) → x
doublelist(nil) → nildoublelist(cons(x, xs)) → cons(double(x), doublelist(del(first(cons(x, xs)), cons(x, xs))))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, del, double, doublelist, first, nil, eq, cons

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

eq#(s(x), s(y)) → eq#(x, y)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

del#(x, cons(y, xs)) → if#(eq(x, y), x, y, xs)if#(false, x, y, xs) → del#(x, xs)

Rewrite Rules

double(0) → 0double(s(x)) → s(s(double(x)))
del(x, nil) → nildel(x, cons(y, xs)) → if(eq(x, y), x, y, xs)
if(true, x, y, xs) → xsif(false, x, y, xs) → cons(y, del(x, xs))
eq(0, 0) → trueeq(0, s(y)) → false
eq(s(x), 0) → falseeq(s(x), s(y)) → eq(x, y)
first(nil) → 0first(cons(x, xs)) → x
doublelist(nil) → nildoublelist(cons(x, xs)) → cons(double(x), doublelist(del(first(cons(x, xs)), cons(x, xs))))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, del, double, doublelist, first, nil, eq, cons

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

del#(x, cons(y, xs)) → if#(eq(x, y), x, y, xs)

Problem 6: DependencyGraph



Dependency Pair Problem

Dependency Pairs

if#(false, x, y, xs) → del#(x, xs)

Rewrite Rules

double(0) → 0double(s(x)) → s(s(double(x)))
del(x, nil) → nildel(x, cons(y, xs)) → if(eq(x, y), x, y, xs)
if(true, x, y, xs) → xsif(false, x, y, xs) → cons(y, del(x, xs))
eq(0, 0) → trueeq(0, s(y)) → false
eq(s(x), 0) → falseeq(s(x), s(y)) → eq(x, y)
first(nil) → 0first(cons(x, xs)) → x
doublelist(nil) → nildoublelist(cons(x, xs)) → cons(double(x), doublelist(del(first(cons(x, xs)), cons(x, xs))))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, false, true, del, doublelist, double, first, cons, eq, nil

Strategy


There are no SCCs!

Problem 4: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

double#(s(x)) → double#(x)

Rewrite Rules

double(0) → 0double(s(x)) → s(s(double(x)))
del(x, nil) → nildel(x, cons(y, xs)) → if(eq(x, y), x, y, xs)
if(true, x, y, xs) → xsif(false, x, y, xs) → cons(y, del(x, xs))
eq(0, 0) → trueeq(0, s(y)) → false
eq(s(x), 0) → falseeq(s(x), s(y)) → eq(x, y)
first(nil) → 0first(cons(x, xs)) → x
doublelist(nil) → nildoublelist(cons(x, xs)) → cons(double(x), doublelist(del(first(cons(x, xs)), cons(x, xs))))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, del, double, doublelist, first, nil, eq, cons

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

double#(s(x)) → double#(x)