YES
Termination Proof
Termination Proof
by ttt2 (version ttt2 1.15)
Input
The rewrite relation of the following TRS is considered.
| 
t(f(x0)) | 
→ | 
t(c(n(x0))) | 
| 
n(f(x0)) | 
→ | 
f(n(x0)) | 
| 
o(f(x0)) | 
→ | 
f(o(x0)) | 
| 
n(s(x0)) | 
→ | 
f(s(x0)) | 
| 
o(s(x0)) | 
→ | 
f(s(x0)) | 
| 
c(f(x0)) | 
→ | 
f(c(x0)) | 
| 
c(n(x0)) | 
→ | 
n(c(x0)) | 
| 
c(o(x0)) | 
→ | 
o(c(x0)) | 
| 
c(o(x0)) | 
→ | 
o(x0) | 
Proof
1 Rule Removal
      Using the
      linear polynomial interpretation over the arctic semiring over the integers
| [o(x1)] | 
 =  | 
10 · 
                    x1 + 
                -∞
             | 
| [t(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [c(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [s(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [f(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [n(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
          the
          rules
| 
t(f(x0)) | 
→ | 
t(c(n(x0))) | 
| 
n(f(x0)) | 
→ | 
f(n(x0)) | 
| 
o(f(x0)) | 
→ | 
f(o(x0)) | 
| 
n(s(x0)) | 
→ | 
f(s(x0)) | 
| 
c(f(x0)) | 
→ | 
f(c(x0)) | 
| 
c(n(x0)) | 
→ | 
n(c(x0)) | 
| 
c(o(x0)) | 
→ | 
o(c(x0)) | 
| 
c(o(x0)) | 
→ | 
o(x0) | 
          remain.
        1.1 String Reversal
        Since only unary symbols occur, one can reverse all terms and obtains the TRS        
        
| 
f(t(x0)) | 
→ | 
n(c(t(x0))) | 
| 
f(n(x0)) | 
→ | 
n(f(x0)) | 
| 
f(o(x0)) | 
→ | 
o(f(x0)) | 
| 
s(n(x0)) | 
→ | 
s(f(x0)) | 
| 
f(c(x0)) | 
→ | 
c(f(x0)) | 
| 
n(c(x0)) | 
→ | 
c(n(x0)) | 
| 
o(c(x0)) | 
→ | 
c(o(x0)) | 
| 
o(c(x0)) | 
→ | 
o(x0) | 
1.1.1 Rule Removal
      Using the
      linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 
            over the naturals
| [o(x1)] | 
 =  | 
 · 
                    x1 + 
 | 
| [t(x1)] | 
 =  | 
 · 
                    x1 + 
 | 
| [c(x1)] | 
 =  | 
 · 
                    x1 + 
 | 
| [s(x1)] | 
 =  | 
 · 
                    x1 + 
 | 
| [f(x1)] | 
 =  | 
 · 
                    x1 + 
 | 
| [n(x1)] | 
 =  | 
 · 
                    x1 + 
 | 
          the
          rules
| 
f(t(x0)) | 
→ | 
n(c(t(x0))) | 
| 
f(n(x0)) | 
→ | 
n(f(x0)) | 
| 
f(o(x0)) | 
→ | 
o(f(x0)) | 
| 
f(c(x0)) | 
→ | 
c(f(x0)) | 
| 
n(c(x0)) | 
→ | 
c(n(x0)) | 
| 
o(c(x0)) | 
→ | 
c(o(x0)) | 
| 
o(c(x0)) | 
→ | 
o(x0) | 
          remain.
        1.1.1.1 Rule Removal
      Using the
      linear polynomial interpretation over the arctic semiring over the integers
| [o(x1)] | 
 =  | 
14 · 
                    x1 + 
                -∞
             | 
| [t(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [c(x1)] | 
 =  | 
1 · 
                    x1 + 
                -∞
             | 
| [f(x1)] | 
 =  | 
2 · 
                    x1 + 
                -∞
             | 
| [n(x1)] | 
 =  | 
1 · 
                    x1 + 
                -∞
             | 
          the
          rules
| 
f(t(x0)) | 
→ | 
n(c(t(x0))) | 
| 
f(n(x0)) | 
→ | 
n(f(x0)) | 
| 
f(o(x0)) | 
→ | 
o(f(x0)) | 
| 
f(c(x0)) | 
→ | 
c(f(x0)) | 
| 
n(c(x0)) | 
→ | 
c(n(x0)) | 
| 
o(c(x0)) | 
→ | 
c(o(x0)) | 
          remain.
        1.1.1.1.1 Rule Removal
      Using the
      linear polynomial interpretation over the arctic semiring over the integers
| [o(x1)] | 
 =  | 
5 · 
                    x1 + 
                -∞
             | 
| [t(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [c(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
| [f(x1)] | 
 =  | 
5 · 
                    x1 + 
                -∞
             | 
| [n(x1)] | 
 =  | 
0 · 
                    x1 + 
                -∞
             | 
          the
          rules
| 
f(n(x0)) | 
→ | 
n(f(x0)) | 
| 
f(o(x0)) | 
→ | 
o(f(x0)) | 
| 
f(c(x0)) | 
→ | 
c(f(x0)) | 
| 
n(c(x0)) | 
→ | 
c(n(x0)) | 
| 
o(c(x0)) | 
→ | 
c(o(x0)) | 
          remain.
        1.1.1.1.1.1 Rule Removal
      Using the
      Knuth Bendix order with w0 = 1 and the following precedence and weight function
| prec(o) | 
= | 
2 | 
 | 
weight(o) | 
= | 
1 | 
 | 
 | 
 | 
| prec(c) | 
= | 
0 | 
 | 
weight(c) | 
= | 
1 | 
 | 
 | 
 | 
| prec(n) | 
= | 
2 | 
 | 
weight(n) | 
= | 
1 | 
 | 
 | 
 | 
| prec(f) | 
= | 
3 | 
 | 
weight(f) | 
= | 
0 | 
 | 
 | 
 | 
          all rules could be removed.
        1.1.1.1.1.1.1 R is empty 
There are no rules in the TRS. Hence, it is terminating.