MAYBE
The TRS could not be proven terminating. The proof attempt took 11163 ms.
The following DP Processors were used
Problem 1 was processed with processor PolynomialLinearRange4iUR (0ms).
| Problem 2 was processed with processor PolynomialLinearRange4iUR (0ms).
| | Problem 3 remains open; application of the following processors failed [DependencyGraph (4ms), PolynomialLinearRange4iUR (373ms), DependencyGraph (44ms), PolynomialLinearRange8NegiUR (2692ms), DependencyGraph (5ms), ReductionPairSAT (6692ms), DependencyGraph (4ms), SizeChangePrinciple (9ms)].
The following open problems remain:
Open Dependency Pair Problem 3
Dependency Pairs
f#(f(a, b), x) | → | f#(a, f(c, f(b, f(a, x)))) | | f#(x, f(y, z)) | → | f#(x, y) |
f#(f(a, b), x) | → | f#(a, x) | | f#(x, f(y, z)) | → | f#(f(x, y), z) |
Rewrite Rules
f(f(a, b), x) | → | f(b, f(a, f(c, f(b, f(a, x))))) | | f(x, f(y, z)) | → | f(f(x, y), z) |
Original Signature
Termination of terms over the following signature is verified: f, b, c, a
Problem 1: PolynomialLinearRange4iUR
Dependency Pair Problem
Dependency Pairs
f#(f(a, b), x) | → | f#(a, f(c, f(b, f(a, x)))) | | f#(f(a, b), x) | → | f#(c, f(b, f(a, x))) |
f#(x, f(y, z)) | → | f#(x, y) | | f#(f(a, b), x) | → | f#(b, f(a, x)) |
f#(f(a, b), x) | → | f#(a, x) | | f#(x, f(y, z)) | → | f#(f(x, y), z) |
f#(f(a, b), x) | → | f#(b, f(a, f(c, f(b, f(a, x))))) |
Rewrite Rules
f(f(a, b), x) | → | f(b, f(a, f(c, f(b, f(a, x))))) | | f(x, f(y, z)) | → | f(f(x, y), z) |
Original Signature
Termination of terms over the following signature is verified: f, b, c, a
Strategy
Polynomial Interpretation
- a: 1
- b: 1
- c: 0
- f(x,y): x
- f#(x,y): 2x + 1
Improved Usable rules
f(x, f(y, z)) | → | f(f(x, y), z) | | f(f(a, b), x) | → | f(b, f(a, f(c, f(b, f(a, x))))) |
The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:
f#(f(a, b), x) | → | f#(c, f(b, f(a, x))) |
Problem 2: PolynomialLinearRange4iUR
Dependency Pair Problem
Dependency Pairs
f#(f(a, b), x) | → | f#(a, f(c, f(b, f(a, x)))) | | f#(x, f(y, z)) | → | f#(x, y) |
f#(f(a, b), x) | → | f#(a, x) | | f#(f(a, b), x) | → | f#(b, f(a, x)) |
f#(x, f(y, z)) | → | f#(f(x, y), z) | | f#(f(a, b), x) | → | f#(b, f(a, f(c, f(b, f(a, x))))) |
Rewrite Rules
f(f(a, b), x) | → | f(b, f(a, f(c, f(b, f(a, x))))) | | f(x, f(y, z)) | → | f(f(x, y), z) |
Original Signature
Termination of terms over the following signature is verified: f, b, c, a
Strategy
Polynomial Interpretation
- a: 2
- b: 0
- c: 0
- f(x,y): x
- f#(x,y): x + 1
Improved Usable rules
f(x, f(y, z)) | → | f(f(x, y), z) | | f(f(a, b), x) | → | f(b, f(a, f(c, f(b, f(a, x))))) |
The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:
f#(f(a, b), x) | → | f#(b, f(a, x)) | | f#(f(a, b), x) | → | f#(b, f(a, f(c, f(b, f(a, x))))) |