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.