Certification Problem

Input (TPDB TRS_Standard/SK90/2.27)

The rewrite relation of the following TRS is considered.

fib(0) 0 (1)
fib(s(0)) s(0) (2)
fib(s(s(0))) s(0) (3)
fib(s(s(x))) sp(g(x)) (4)
g(0) pair(s(0),0) (5)
g(s(0)) pair(s(0),s(0)) (6)
g(s(x)) np(g(x)) (7)
sp(pair(x,y)) +(x,y) (8)
np(pair(x,y)) pair(+(x,y),x) (9)
+(x,0) x (10)
+(x,s(y)) s(+(x,y)) (11)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by ttt2 @ termCOMP 2023)

1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[sp(x1)] =
1 1 0
0 1 1
1 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[fib(x1)] =
1 0 0
0 0 1
1 0 0
· x1 +
1 0 0
0 0 0
1 0 0
[g(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[pair(x1, x2)] =
1 1 1
1 0 0
1 1 0
· x1 +
1 0 0
1 0 0
1 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
1 0 0
1 0 0
[+(x1, x2)] =
1 0 0
0 1 0
1 1 1
· x1 +
1 0 0
1 0 0
1 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[np(x1)] =
1 1 1
0 1 1
0 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
0 0 0
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
fib(0) 0 (1)
fib(s(0)) s(0) (2)
fib(s(s(0))) s(0) (3)

1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[sp(x1)] =
1 0 1
0 0 1
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[fib(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[g(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[pair(x1, x2)] =
1 0 0
0 0 0
1 1 1
· x1 +
1 0 0
1 1 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[+(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 0 0
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[np(x1)] =
1 0 1
0 1 1
0 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
fib(s(s(x))) sp(g(x)) (4)

1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[sp(x1)] =
1 0 0
1 0 0
1 0 1
· x1 +
1 0 0
0 0 0
1 0 0
[g(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[pair(x1, x2)] =
1 1 1
1 0 0
0 0 0
· x1 +
1 0 0
0 0 0
1 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[+(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 0 0
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[np(x1)] =
1 1 0
0 1 1
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
sp(pair(x,y)) +(x,y) (8)

1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[g(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[pair(x1, x2)] =
1 0 0
1 0 0
1 0 0
· x1 +
1 0 0
0 0 0
1 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[+(x1, x2)] =
1 0 0
0 1 1
0 1 1
· x1 +
1 0 0
0 0 0
0 0 0
· x2 +
0 0 0
1 0 0
1 0 0
[np(x1)] =
1 1 0
0 0 1
0 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
g(0) pair(s(0),0) (5)
g(s(0)) pair(s(0),s(0)) (6)

1.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[g(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[pair(x1, x2)] =
1 0 0
1 0 0
0 0 0
· x1 +
1 0 0
0 0 0
1 0 0
· x2 +
0 0 0
1 0 0
0 0 0
[0] =
0 0 0
1 0 0
0 0 0
[+(x1, x2)] =
1 0 0
0 1 1
1 0 1
· x1 +
1 0 0
1 1 1
0 1 0
· x2 +
0 0 0
0 0 0
1 0 0
[np(x1)] =
1 1 0
0 1 1
0 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
1 0 0
1 0 0
all of the following rules can be deleted.
np(pair(x,y)) pair(+(x,y),x) (9)

1.1.1.1.1.1 Rule Removal

Using the Knuth Bendix order with w0 = 1 and the following precedence and weight functions
prec(+) = 2 weight(+) = 0
prec(np) = 0 weight(np) = 4
prec(g) = 3 weight(g) = 2
prec(s) = 1 weight(s) = 4
prec(0) = 4 weight(0) = 2
all of the following rules can be deleted.
g(s(x)) np(g(x)) (7)
+(x,0) x (10)
+(x,s(y)) s(+(x,y)) (11)

1.1.1.1.1.1.1 R is empty

There are no rules in the TRS. Hence, it is terminating.