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


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(x)), y)


Rules:


f(x, a(b(y))) -> f(a(b(x)), y)
f(a(x), y) -> f(x, a(y))
f(b(x), y) -> f(x, b(y))





On this DP problem, an Instantiation SCC transformation can be performed.
As a result of transforming the rule

F(a(x), y) -> F(x, a(y))
three new Dependency Pairs are created:

F(a(x''), a(y'')) -> F(x'', a(a(y'')))
F(a(b(x'')), y'') -> F(b(x''), a(y''))
F(a(x''), b(y'')) -> F(x'', a(b(y'')))

The transformation is resulting in one new DP problem:



   R
DPs
       →DP Problem 1
Inst
           →DP Problem 2
Instantiation Transformation


Dependency Pairs:

F(a(x''), b(y'')) -> F(x'', a(b(y'')))
F(a(x''), a(y'')) -> F(x'', a(a(y'')))
F(x, a(b(y))) -> F(a(b(x)), y)
F(a(b(x'')), y'') -> F(b(x''), a(y''))
F(b(x), y) -> F(x, b(y))


Rules:


f(x, a(b(y))) -> f(a(b(x)), y)
f(a(x), y) -> f(x, a(y))
f(b(x), y) -> f(x, b(y))





On this DP problem, an Instantiation SCC transformation can be performed.
As a result of transforming the rule

F(b(x), y) -> F(x, b(y))
four new Dependency Pairs are created:

F(b(x''), b(y'')) -> F(x'', b(b(y'')))
F(b(x'), a(a(y''''))) -> F(x', b(a(a(y''''))))
F(b(x'), a(y'''')) -> F(x', b(a(y'''')))
F(b(x'), a(b(y''''))) -> F(x', b(a(b(y''''))))

The transformation is resulting in one new DP problem:



   R
DPs
       →DP Problem 1
Inst
           →DP Problem 2
Inst
             ...
               →DP Problem 3
Remaining Obligation(s)




The following remains to be proven:
Dependency Pairs:

F(b(x'), a(b(y''''))) -> F(x', b(a(b(y''''))))
F(b(x'), a(y'''')) -> F(x', b(a(y'''')))
F(b(x''), b(y'')) -> F(x'', b(b(y'')))
F(b(x'), a(a(y''''))) -> F(x', b(a(a(y''''))))
F(a(b(x'')), y'') -> F(b(x''), a(y''))
F(a(x''), a(y'')) -> F(x'', a(a(y'')))
F(x, a(b(y))) -> F(a(b(x)), y)
F(a(x''), b(y'')) -> F(x'', a(b(y'')))


Rules:


f(x, a(b(y))) -> f(a(b(x)), y)
f(a(x), y) -> f(x, a(y))
f(b(x), y) -> f(x, b(y))




Termination of R could not be shown.
Duration:
0:00 minutes