YES
Termination Proof
Termination Proof
by ttt2 (version ttt2 1.15)
Input
The rewrite relation of the following TRS is considered.
p(0(x0)) |
→ |
s(s(0(s(s(p(x0)))))) |
p(s(0(x0))) |
→ |
0(x0) |
p(s(s(x0))) |
→ |
s(p(s(x0))) |
f(s(x0)) |
→ |
g(q(i(x0))) |
g(x0) |
→ |
f(p(p(x0))) |
q(i(x0)) |
→ |
q(s(x0)) |
q(s(x0)) |
→ |
s(s(x0)) |
i(x0) |
→ |
s(x0) |
Proof
1 String Reversal
Since only unary symbols occur, one can reverse all terms and obtains the TRS
0(p(x0)) |
→ |
p(s(s(0(s(s(x0)))))) |
0(s(p(x0))) |
→ |
0(x0) |
s(s(p(x0))) |
→ |
s(p(s(x0))) |
s(f(x0)) |
→ |
i(q(g(x0))) |
g(x0) |
→ |
p(p(f(x0))) |
i(q(x0)) |
→ |
s(q(x0)) |
s(q(x0)) |
→ |
s(s(x0)) |
i(x0) |
→ |
s(x0) |
1.1 Dependency Pair Transformation
The following set of initial dependency pairs has been identified.
0#(p(x0)) |
→ |
s#(x0) |
0#(p(x0)) |
→ |
s#(s(x0)) |
0#(p(x0)) |
→ |
0#(s(s(x0))) |
0#(p(x0)) |
→ |
s#(0(s(s(x0)))) |
0#(p(x0)) |
→ |
s#(s(0(s(s(x0))))) |
0#(s(p(x0))) |
→ |
0#(x0) |
s#(s(p(x0))) |
→ |
s#(x0) |
s#(s(p(x0))) |
→ |
s#(p(s(x0))) |
s#(f(x0)) |
→ |
g#(x0) |
s#(f(x0)) |
→ |
i#(q(g(x0))) |
i#(q(x0)) |
→ |
s#(q(x0)) |
s#(q(x0)) |
→ |
s#(x0) |
s#(q(x0)) |
→ |
s#(s(x0)) |
i#(x0) |
→ |
s#(x0) |
1.1.1 Dependency Graph Processor
The dependency pairs are split into 2
components.