TIMEOUT
The TRS could not be proven terminating. The proof attempt took 60021 ms.
The following DP Processors were used
Problem 1 was processed with processor DependencyGraph (170ms).
| Problem 2 was processed with processor SubtermCriterion (2ms).
| Problem 3 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (6ms), PolynomialLinearRange4iUR (83ms), DependencyGraph (5ms), PolynomialLinearRange8NegiUR (68ms), DependencyGraph (4ms), ReductionPairSAT (385ms)].
| Problem 4 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (3ms), PolynomialLinearRange4iUR (209ms), DependencyGraph (2ms), PolynomialLinearRange8NegiUR (809ms), DependencyGraph (2ms), ReductionPairSAT (331ms)].
| Problem 5 was processed with processor SubtermCriterion (1ms).
| Problem 6 remains open; application of the following processors failed [SubtermCriterion (0ms), DependencyGraph (4ms), PolynomialLinearRange4iUR (548ms), DependencyGraph (2ms), PolynomialLinearRange8NegiUR (2162ms), DependencyGraph (2ms), ReductionPairSAT (timeout)].
| Problem 7 was processed with processor SubtermCriterion (0ms).
| Problem 8 was processed with processor SubtermCriterion (5ms).
The following open problems remain:
Open Dependency Pair Problem 3
Dependency Pairs
f2#(x, 1, z) | → | f0#(x, z, z) | | f0#(0, y, x) | → | f1#(x, y, x) |
f1#(x, y, z) | → | f2#(x, y, z) |
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Open Dependency Pair Problem 4
Dependency Pairs
ifPlus#(false, x, y) | → | plus#(p(x), y) | | plus#(x, y) | → | ifPlus#(isZero(x), x, inc(y)) |
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Open Dependency Pair Problem 6
Dependency Pairs
ifTimes#(false, i, x, y, z) | → | timesIter#(inc(i), x, y, plus(z, y)) | | timesIter#(i, x, y, z) | → | ifTimes#(ge(i, x), i, x, y, z) |
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Problem 1: DependencyGraph
Dependency Pair Problem
Dependency Pairs
ifPlus#(false, x, y) | → | p#(x) | | timesIter#(i, x, y, z) | → | ge#(i, x) |
f2#(x, 1, z) | → | f0#(x, z, z) | | ifTimes#(false, i, x, y, z) | → | timesIter#(inc(i), x, y, plus(z, y)) |
ifTimes#(false, i, x, y, z) | → | plus#(z, y) | | plus#(x, y) | → | inc#(y) |
ifPlus#(true, x, y) | → | p#(y) | | f0#(0, y, x) | → | f1#(x, y, x) |
plus#(x, y) | → | ifPlus#(isZero(x), x, inc(y)) | | f1#(x, y, z) | → | f2#(x, y, z) |
ifPlus#(false, x, y) | → | plus#(p(x), y) | | isZero#(s(s(x))) | → | isZero#(s(x)) |
ifTimes#(false, i, x, y, z) | → | inc#(i) | | ge#(s(x), s(y)) | → | ge#(x, y) |
timesIter#(i, x, y, z) | → | ifTimes#(ge(i, x), i, x, y, z) | | times#(x, y) | → | timesIter#(0, x, y, 0) |
inc#(s(x)) | → | inc#(x) | | plus#(x, y) | → | isZero#(x) |
p#(s(s(x))) | → | p#(s(x)) |
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Strategy
The following SCCs where found
ifTimes#(false, i, x, y, z) → timesIter#(inc(i), x, y, plus(z, y)) | timesIter#(i, x, y, z) → ifTimes#(ge(i, x), i, x, y, z) |
isZero#(s(s(x))) → isZero#(s(x)) |
ifPlus#(false, x, y) → plus#(p(x), y) | plus#(x, y) → ifPlus#(isZero(x), x, inc(y)) |
ge#(s(x), s(y)) → ge#(x, y) |
f2#(x, 1, z) → f0#(x, z, z) | f0#(0, y, x) → f1#(x, y, x) |
f1#(x, y, z) → f2#(x, y, z) |
Problem 2: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
isZero#(s(s(x))) | → | isZero#(s(x)) |
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed:
isZero#(s(s(x))) | → | isZero#(s(x)) |
Problem 5: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed:
Problem 7: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
ge#(s(x), s(y)) | → | ge#(x, y) |
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed:
ge#(s(x), s(y)) | → | ge#(x, y) |
Problem 8: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
Rewrite Rules
plus(x, y) | → | ifPlus(isZero(x), x, inc(y)) | | ifPlus(true, x, y) | → | p(y) |
ifPlus(false, x, y) | → | plus(p(x), y) | | times(x, y) | → | timesIter(0, x, y, 0) |
timesIter(i, x, y, z) | → | ifTimes(ge(i, x), i, x, y, z) | | ifTimes(true, i, x, y, z) | → | z |
ifTimes(false, i, x, y, z) | → | timesIter(inc(i), x, y, plus(z, y)) | | isZero(0) | → | true |
isZero(s(0)) | → | false | | isZero(s(s(x))) | → | isZero(s(x)) |
inc(0) | → | s(0) | | inc(s(x)) | → | s(inc(x)) |
inc(x) | → | s(x) | | p(0) | → | 0 |
p(s(x)) | → | x | | p(s(s(x))) | → | s(p(s(x))) |
ge(x, 0) | → | true | | ge(0, s(y)) | → | false |
ge(s(x), s(y)) | → | ge(x, y) | | f0(0, y, x) | → | f1(x, y, x) |
f1(x, y, z) | → | f2(x, y, z) | | f2(x, 1, z) | → | f0(x, z, z) |
f0(x, y, z) | → | d | | f1(x, y, z) | → | c |
Original Signature
Termination of terms over the following signature is verified: plus, ifTimes, d, c, true, ge, ifPlus, 1, timesIter, 0, inc, s, times, p, false, f1, f0, f2, isZero
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed: