Certification Problem

Input (TPDB TRS_Standard/SK90/4.27)

The rewrite relation of the following TRS is considered.

int(0,0) .(0,nil) (1)
int(0,s(y)) .(0,int(s(0),s(y))) (2)
int(s(x),0) nil (3)
int(s(x),s(y)) int_list(int(x,y)) (4)
int_list(nil) nil (5)
int_list(.(x,y)) .(s(x),int_list(y)) (6)

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
[s(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[int(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
· x2 +
1 0 0
0 0 0
0 0 0
[.(x1, x2)] =
1 1 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[int_list(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[nil] =
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
int(0,0) .(0,nil) (1)
int(s(x),0) nil (3)

1.1 Rule Removal

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

1.1.1 Rule Removal

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

1.1.1.1 Rule Removal

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

1.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (5 x 5)-matrices with strict dimension 1 over the naturals
[s(x1)] =
1 1 0 0 0
0 0 0 0 0
0 0 0 1 1
1 1 0 0 1
0 0 0 0 1
· x1 +
0 0 0 0 0
1 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
[int(x1, x2)] =
1 0 0 1 0
0 0 0 0 0
0 0 0 1 0
0 0 0 0 0
0 0 0 0 0
· x1 +
1 0 0 0 1
0 0 0 0 1
1 0 1 0 0
0 0 0 0 1
0 1 0 1 0
· x2 +
0 0 0 0 0
1 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 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 1 0 0
· x1 +
1 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 0 1 0
1 0 0 0 0
· x2 +
0 0 0 0 0
1 0 0 0 0
1 0 0 0 0
0 0 0 0 0
0 0 0 0 0
[0] =
0 0 0 0 0
0 0 0 0 0
1 0 0 0 0
1 0 0 0 0
0 0 0 0 0
all of the following rules can be deleted.
int(0,s(y)) .(0,int(s(0),s(y))) (2)

1.1.1.1.1.1 R is empty

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