Term Rewriting System R:
[x, y]
f(x, a(b(y))) -> f(a(a(b(x))), y)
f(a(x), y) -> f(x, a(y))
f(b(x), y) -> f(x, b(y))
Termination of R to be shown.
R
↳Dependency Pair Analysis
R contains the following Dependency Pairs:
F(x, a(b(y))) -> F(a(a(b(x))), y)
F(a(x), y) -> F(x, a(y))
F(b(x), y) -> F(x, b(y))
Furthermore, R contains one SCC.
R
↳DPs
→DP Problem 1
↳Modular Removal of Rules
Dependency Pairs:
F(b(x), y) -> F(x, b(y))
F(a(x), y) -> F(x, a(y))
F(x, a(b(y))) -> F(a(a(b(x))), y)
Rules:
f(x, a(b(y))) -> f(a(a(b(x))), y)
f(a(x), y) -> f(x, a(y))
f(b(x), y) -> f(x, b(y))
We have the following set of usable rules:
none
To remove rules and DPs from this DP problem we used the following monotonic and CE-compatible order: Polynomial ordering.
Polynomial interpretation:
POL(b(x1)) | = x1 |
POL(a(x1)) | = x1 |
POL(F(x1, x2)) | = 1 + x1 + x2 |
We have the following set D of usable symbols: {b, a, F}
No Dependency Pairs can be deleted.
3 non usable rules have been deleted.
The result of this processor delivers one new DP problem.
R
↳DPs
→DP Problem 1
↳MRR
→DP Problem 2
↳Non-Overlappingness Check
Dependency Pairs:
F(b(x), y) -> F(x, b(y))
F(a(x), y) -> F(x, a(y))
F(x, a(b(y))) -> F(a(a(b(x))), y)
Rule:
none
R does not overlap into P. Moreover, R is locally confluent (all critical pairs are trivially joinable).Hence we can switch to innermost.
The transformation is resulting in one subcycle:
R
↳DPs
→DP Problem 1
↳MRR
→DP Problem 2
↳NOC
...
→DP Problem 3
↳Scc To SRS
Dependency Pairs:
F(b(x), y) -> F(x, b(y))
F(a(x), y) -> F(x, a(y))
F(x, a(b(y))) -> F(a(a(b(x))), y)
Rule:
none
Strategy:
innermost
It has been determined that showing finiteness of this DP problem is equivalent to showing termination of a string rewrite system.
(Re)applying the dependency pair method (incl. the dependency graph) for the following SRS:
a(b(x)) -> b(a(a(x)))
There is only one SCC in the graph and, thus, we obtain one new DP problem.
R
↳DPs
→DP Problem 1
↳MRR
→DP Problem 2
↳NOC
...
→DP Problem 4
↳Non-Overlappingness Check
Dependency Pairs:
A(b(x)) -> A(x)
A(b(x)) -> A(a(x))
Rule:
a(b(x)) -> b(a(a(x)))
R does not overlap into P. Moreover, R is locally confluent (all critical pairs are trivially joinable).Hence we can switch to innermost.
The transformation is resulting in one subcycle:
R
↳DPs
→DP Problem 1
↳MRR
→DP Problem 2
↳NOC
...
→DP Problem 5
↳Modular Removal of Rules
Dependency Pairs:
A(b(x)) -> A(x)
A(b(x)) -> A(a(x))
Rule:
a(b(x)) -> b(a(a(x)))
Strategy:
innermost
We have the following set of usable rules:
a(b(x)) -> b(a(a(x)))
To remove rules and DPs from this DP problem we used the following monotonic and CE-compatible order: Polynomial ordering.
Polynomial interpretation:
POL(b(x1)) | = 1 + x1 |
POL(a(x1)) | = x1 |
POL(A(x1)) | = x1 |
We have the following set D of usable symbols: {b, a, A}
The following Dependency Pairs can be deleted as the lhs is strictly greater than the corresponding rhs:
A(b(x)) -> A(x)
A(b(x)) -> A(a(x))
No Rules can be deleted.
After the removal, there are no SCCs in the dependency graph which results in no DP problems which have to be solved.
Termination of R successfully shown.
Duration:
0:00 minutes