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


Rules:


f(x, a(b(y))) -> f(a(b(x)), y)
f(x, b(c(y))) -> f(b(c(x)), y)
f(x, c(a(y))) -> f(c(a(x)), y)
f(a(x), y) -> f(x, a(y))
f(b(x), y) -> f(x, b(y))
f(c(x), y) -> f(x, c(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(c(x1))=  x1  
  POL(b(x1))=  x1  
  POL(a(x1))=  x1  
  POL(F(x1, x2))=  1 + x1 + x2  

We have the following set D of usable symbols: {c, b, a, F}
No Dependency Pairs can be deleted.
6 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(c(x), y) -> F(x, c(y))
F(x, c(a(y))) -> F(c(a(x)), y)
F(x, b(c(y))) -> F(b(c(x)), y)
F(x, a(b(y))) -> F(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(c(x), y) -> F(x, c(y))
F(x, c(a(y))) -> F(c(a(x)), y)
F(x, b(c(y))) -> F(b(c(x)), y)
F(x, a(b(y))) -> F(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:

c(a(x)) -> a(c(x))
a(b(x)) -> b(a(x))
b(c(x)) -> c(b(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
Modular Removal of Rules


Dependency Pairs:

A(b(x)) -> A(x)
B(c(x)) -> B(x)
C(a(x)) -> C(x)
B(c(x)) -> C(b(x))
A(b(x)) -> B(a(x))
C(a(x)) -> A(c(x))


Rules:


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





We have the following set of usable rules:

b(c(x)) -> c(b(x))
a(b(x)) -> b(a(x))
c(a(x)) -> a(c(x))
To remove rules and DPs from this DP problem we used the following monotonic and CE-compatible order: Polynomial ordering.
Polynomial interpretation:
  POL(c(x1))=  x1  
  POL(C(x1))=  x1  
  POL(B(x1))=  x1  
  POL(b(x1))=  x1  
  POL(a(x1))=  1 + x1  
  POL(A(x1))=  1 + x1  

We have the following set D of usable symbols: {c, C, B, b, a, A}
The following Dependency Pairs can be deleted as the lhs is strictly greater than the corresponding rhs:

C(a(x)) -> C(x)

No Rules can be deleted.

The result of this processor delivers one new DP problem.



   R
DPs
       →DP Problem 1
MRR
           →DP Problem 2
NOC
             ...
               →DP Problem 5
Modular Removal of Rules


Dependency Pairs:

A(b(x)) -> A(x)
B(c(x)) -> B(x)
B(c(x)) -> C(b(x))
A(b(x)) -> B(a(x))
C(a(x)) -> A(c(x))


Rules:


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





We have the following set of usable rules:

b(c(x)) -> c(b(x))
a(b(x)) -> b(a(x))
c(a(x)) -> a(c(x))
To remove rules and DPs from this DP problem we used the following monotonic and CE-compatible order: Polynomial ordering.
Polynomial interpretation:
  POL(c(x1))=  x1  
  POL(C(x1))=  x1  
  POL(B(x1))=  1 + x1  
  POL(b(x1))=  1 + x1  
  POL(a(x1))=  x1  
  POL(A(x1))=  x1  

We have the following set D of usable symbols: {c, C, B, 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)

No Rules can be deleted.

The result of this processor delivers one new DP problem.



   R
DPs
       →DP Problem 1
MRR
           →DP Problem 2
NOC
             ...
               →DP Problem 6
Modular Removal of Rules


Dependency Pairs:

B(c(x)) -> B(x)
B(c(x)) -> C(b(x))
A(b(x)) -> B(a(x))
C(a(x)) -> A(c(x))


Rules:


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





We have the following set of usable rules:

b(c(x)) -> c(b(x))
a(b(x)) -> b(a(x))
c(a(x)) -> a(c(x))
To remove rules and DPs from this DP problem we used the following monotonic and CE-compatible order: Polynomial ordering.
Polynomial interpretation:
  POL(c(x1))=  1 + x1  
  POL(C(x1))=  1 + x1  
  POL(B(x1))=  x1  
  POL(b(x1))=  x1  
  POL(a(x1))=  x1  
  POL(A(x1))=  x1  

We have the following set D of usable symbols: {c, C, B, b, a, A}
The following Dependency Pairs can be deleted as the lhs is strictly greater than the corresponding rhs:

B(c(x)) -> B(x)

No Rules can be deleted.

The result of this processor delivers one new DP problem.



   R
DPs
       →DP Problem 1
MRR
           →DP Problem 2
NOC
             ...
               →DP Problem 7
Negative Polynomial Order


Dependency Pairs:

B(c(x)) -> C(b(x))
A(b(x)) -> B(a(x))
C(a(x)) -> A(c(x))


Rules:


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





The following Dependency Pair can be strictly oriented using the given order.

B(c(x)) -> C(b(x))


Moreover, the following usable rules (regarding the implicit AFS) are oriented.

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


Used ordering:
Polynomial Order with Interpretation:

POL( B(x1) ) = 1

POL( C(x1) ) = 0

POL( A(x1) ) = x1

POL( c(x1) ) = 0

POL( b(x1) ) = 1

POL( a(x1) ) = x1


This results in one new DP problem.


   R
DPs
       →DP Problem 1
MRR
           →DP Problem 2
NOC
             ...
               →DP Problem 8
Dependency Graph


Dependency Pairs:

A(b(x)) -> B(a(x))
C(a(x)) -> A(c(x))


Rules:


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





Using the Dependency Graph resulted in no new DP problems.

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