Certification Problem

Input (TPDB TRS_Standard/AG01/#3.42)

The rewrite relation of the following TRS is considered.

half(0) 0 (1)
half(s(0)) 0 (2)
half(s(s(x))) s(half(x)) (3)
lastbit(0) 0 (4)
lastbit(s(0)) s(0) (5)
lastbit(s(s(x))) lastbit(x) (6)
conv(0) cons(nil,0) (7)
conv(s(x)) cons(conv(half(s(x))),lastbit(s(x))) (8)

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
[conv(x1)] =
1 0 1
0 0 1
1 1 0
· x1 +
0 0 0
0 0 0
1 0 0
[half(x1)] =
1 0 0
0 0 1
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[lastbit(x1)] =
1 0 0
0 1 0
0 1 1
· x1 +
0 0 0
1 0 0
0 0 0
[nil] =
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
1 0 0
1 0 0
[cons(x1, x2)] =
1 0 0
0 0 0
0 1 0
· x1 +
1 0 0
1 0 0
0 0 0
· x2 +
0 0 0
0 0 0
1 0 0
[s(x1)] =
1 0 0
0 0 1
1 1 1
· x1 +
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
conv(0) cons(nil,0) (7)

1.1 Rule Removal

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

1.1.1 Rule Removal

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

1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[conv(x1)] =
1 1 0
1 1 1
1 0 0
· x1 +
0 0 0
0 0 0
1 0 0
[half(x1)] =
1 0 0
0 0 1
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[lastbit(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
[cons(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
[s(x1)] =
1 0 0
1 1 1
0 1 1
· x1 +
0 0 0
1 0 0
0 0 0
all of the following rules can be deleted.
conv(s(x)) cons(conv(half(s(x))),lastbit(s(x))) (8)

1.1.1.1.1 Rule Removal

Using the Knuth Bendix order with w0 = 1 and the following precedence and weight functions
prec(lastbit) = 3 weight(lastbit) = 2
prec(s) = 0 weight(s) = 2
prec(half) = 1 weight(half) = 1
prec(0) = 2 weight(0) = 4
all of the following rules can be deleted.
half(0) 0 (1)
half(s(s(x))) s(half(x)) (3)
lastbit(s(s(x))) lastbit(x) (6)

1.1.1.1.1.1 R is empty

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