TIMEOUT

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (97ms).
 | – Problem 2 was processed with processor SubtermCriterion (1ms).
 | – Problem 3 was processed with processor SubtermCriterion (1ms).
 | – Problem 4 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (6ms), PolynomialLinearRange4iUR (145ms), DependencyGraph (5ms), PolynomialLinearRange8NegiUR (451ms), DependencyGraph (5ms), ReductionPairSAT (59251ms)].
 | – Problem 5 was processed with processor SubtermCriterion (1ms).
 | – Problem 6 was processed with processor SubtermCriterion (0ms).

The following open problems remain:



Open Dependency Pair Problem 4

Dependency Pairs

helpb#(c, l, ys, zs) → helpa#(s(c), l, ys, zs)if#(false, c, l, ys, zs) → helpb#(c, l, ys, zs)
helpa#(c, l, ys, zs) → if#(ge(c, l), c, l, ys, zs)

Rewrite Rules

app(x, y) → helpa(0, plus(length(x), length(y)), x, y)plus(x, 0) → x
plus(x, s(y)) → s(plus(x, y))length(nil) → 0
length(cons(x, y)) → s(length(y))helpa(c, l, ys, zs) → if(ge(c, l), c, l, ys, zs)
ge(x, 0) → truege(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)if(true, c, l, ys, zs) → nil
if(false, c, l, ys, zs) → helpb(c, l, ys, zs)take(0, cons(x, xs), ys) → x
take(0, nil, cons(y, ys)) → ytake(s(c), cons(x, xs), ys) → take(c, xs, ys)
take(s(c), nil, cons(y, ys)) → take(c, nil, ys)helpb(c, l, ys, zs) → cons(take(c, ys, zs), helpa(s(c), l, ys, zs))

Original Signature

Termination of terms over the following signature is verified: plus, app, xs, true, ge, 0, s, take, if, helpa, length, false, helpb, nil, cons


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

take#(s(c), nil, cons(y, ys)) → take#(c, nil, ys)helpb#(c, l, ys, zs) → helpa#(s(c), l, ys, zs)
helpa#(c, l, ys, zs) → if#(ge(c, l), c, l, ys, zs)length#(cons(x, y)) → length#(y)
app#(x, y) → length#(y)plus#(x, s(y)) → plus#(x, y)
if#(false, c, l, ys, zs) → helpb#(c, l, ys, zs)app#(x, y) → length#(x)
helpa#(c, l, ys, zs) → ge#(c, l)ge#(s(x), s(y)) → ge#(x, y)
helpb#(c, l, ys, zs) → take#(c, ys, zs)app#(x, y) → plus#(length(x), length(y))
take#(s(c), cons(x, xs), ys) → take#(c, xs, ys)app#(x, y) → helpa#(0, plus(length(x), length(y)), x, y)

Rewrite Rules

app(x, y) → helpa(0, plus(length(x), length(y)), x, y)plus(x, 0) → x
plus(x, s(y)) → s(plus(x, y))length(nil) → 0
length(cons(x, y)) → s(length(y))helpa(c, l, ys, zs) → if(ge(c, l), c, l, ys, zs)
ge(x, 0) → truege(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)if(true, c, l, ys, zs) → nil
if(false, c, l, ys, zs) → helpb(c, l, ys, zs)take(0, cons(x, xs), ys) → x
take(0, nil, cons(y, ys)) → ytake(s(c), cons(x, xs), ys) → take(c, xs, ys)
take(s(c), nil, cons(y, ys)) → take(c, nil, ys)helpb(c, l, ys, zs) → cons(take(c, ys, zs), helpa(s(c), l, ys, zs))

Original Signature

Termination of terms over the following signature is verified: plus, app, xs, true, ge, 0, s, take, if, helpa, length, false, helpb, cons, nil

Strategy


The following SCCs where found

take#(s(c), nil, cons(y, ys)) → take#(c, nil, ys)

length#(cons(x, y)) → length#(y)

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

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

helpb#(c, l, ys, zs) → helpa#(s(c), l, ys, zs)if#(false, c, l, ys, zs) → helpb#(c, l, ys, zs)
helpa#(c, l, ys, zs) → if#(ge(c, l), c, l, ys, zs)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

take#(s(c), nil, cons(y, ys)) → take#(c, nil, ys)

Rewrite Rules

app(x, y) → helpa(0, plus(length(x), length(y)), x, y)plus(x, 0) → x
plus(x, s(y)) → s(plus(x, y))length(nil) → 0
length(cons(x, y)) → s(length(y))helpa(c, l, ys, zs) → if(ge(c, l), c, l, ys, zs)
ge(x, 0) → truege(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)if(true, c, l, ys, zs) → nil
if(false, c, l, ys, zs) → helpb(c, l, ys, zs)take(0, cons(x, xs), ys) → x
take(0, nil, cons(y, ys)) → ytake(s(c), cons(x, xs), ys) → take(c, xs, ys)
take(s(c), nil, cons(y, ys)) → take(c, nil, ys)helpb(c, l, ys, zs) → cons(take(c, ys, zs), helpa(s(c), l, ys, zs))

Original Signature

Termination of terms over the following signature is verified: plus, app, xs, true, ge, 0, s, take, if, helpa, length, false, helpb, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

take#(s(c), nil, cons(y, ys)) → take#(c, nil, ys)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

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

Rewrite Rules

app(x, y) → helpa(0, plus(length(x), length(y)), x, y)plus(x, 0) → x
plus(x, s(y)) → s(plus(x, y))length(nil) → 0
length(cons(x, y)) → s(length(y))helpa(c, l, ys, zs) → if(ge(c, l), c, l, ys, zs)
ge(x, 0) → truege(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)if(true, c, l, ys, zs) → nil
if(false, c, l, ys, zs) → helpb(c, l, ys, zs)take(0, cons(x, xs), ys) → x
take(0, nil, cons(y, ys)) → ytake(s(c), cons(x, xs), ys) → take(c, xs, ys)
take(s(c), nil, cons(y, ys)) → take(c, nil, ys)helpb(c, l, ys, zs) → cons(take(c, ys, zs), helpa(s(c), l, ys, zs))

Original Signature

Termination of terms over the following signature is verified: plus, app, xs, true, ge, 0, s, take, if, helpa, length, false, helpb, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

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

Problem 5: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

length#(cons(x, y)) → length#(y)

Rewrite Rules

app(x, y) → helpa(0, plus(length(x), length(y)), x, y)plus(x, 0) → x
plus(x, s(y)) → s(plus(x, y))length(nil) → 0
length(cons(x, y)) → s(length(y))helpa(c, l, ys, zs) → if(ge(c, l), c, l, ys, zs)
ge(x, 0) → truege(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)if(true, c, l, ys, zs) → nil
if(false, c, l, ys, zs) → helpb(c, l, ys, zs)take(0, cons(x, xs), ys) → x
take(0, nil, cons(y, ys)) → ytake(s(c), cons(x, xs), ys) → take(c, xs, ys)
take(s(c), nil, cons(y, ys)) → take(c, nil, ys)helpb(c, l, ys, zs) → cons(take(c, ys, zs), helpa(s(c), l, ys, zs))

Original Signature

Termination of terms over the following signature is verified: plus, app, xs, true, ge, 0, s, take, if, helpa, length, false, helpb, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

length#(cons(x, y)) → length#(y)

Problem 6: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

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

Rewrite Rules

app(x, y) → helpa(0, plus(length(x), length(y)), x, y)plus(x, 0) → x
plus(x, s(y)) → s(plus(x, y))length(nil) → 0
length(cons(x, y)) → s(length(y))helpa(c, l, ys, zs) → if(ge(c, l), c, l, ys, zs)
ge(x, 0) → truege(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)if(true, c, l, ys, zs) → nil
if(false, c, l, ys, zs) → helpb(c, l, ys, zs)take(0, cons(x, xs), ys) → x
take(0, nil, cons(y, ys)) → ytake(s(c), cons(x, xs), ys) → take(c, xs, ys)
take(s(c), nil, cons(y, ys)) → take(c, nil, ys)helpb(c, l, ys, zs) → cons(take(c, ys, zs), helpa(s(c), l, ys, zs))

Original Signature

Termination of terms over the following signature is verified: plus, app, xs, true, ge, 0, s, take, if, helpa, length, false, helpb, cons, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

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