Term Rewriting System R:
[x, y]
f(x, a(b(y))) -> f(a(b(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(b(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(b(b(x))), y)


Rules:


f(x, a(b(y))) -> f(a(b(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(b(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(b(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(b(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 Pair:

A(b(x)) -> A(x)


Rule:


a(b(x)) -> b(b(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
Usable Rules (Innermost)


Dependency Pair:

A(b(x)) -> A(x)


Rule:


a(b(x)) -> b(b(a(x)))


Strategy:

innermost




As we are in the innermost case, we can delete all 1 non-usable-rules.


   R
DPs
       →DP Problem 1
MRR
           →DP Problem 2
NOC
             ...
               →DP Problem 6
Size-Change Principle


Dependency Pair:

A(b(x)) -> A(x)


Rule:

none


Strategy:

innermost




We number the DPs as follows:
  1. A(b(x)) -> A(x)
and get the following Size-Change Graph(s):
{1} , {1}
1>1

which lead(s) to this/these maximal multigraph(s):
{1} , {1}
1>1

DP: empty set
Oriented Rules: none

We used the order Homeomorphic Embedding Order with Non-Strict Precedence.
trivial

with Argument Filtering System:
b(x1) -> b(x1)

We obtain no new DP problems.

Termination of R successfully shown.
Duration:
0:00 minutes