Certification Problem

Input (TPDB TRS_Relative/INVY_15/#3.7_rand)

The relative rewrite relation R/S is considered where R is the following TRS

half(0) 0 (1)
half(s(s(x))) s(half(x)) (2)
log(s(0)) 0 (3)
log(s(s(x))) s(log(s(half(x)))) (4)

and S is the following TRS.

rand(x) x (5)
rand(x) rand(s(x)) (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
[rand(x1)] =
1 0 1
0 1 1
1 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[half(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[log(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
1 0 0
1 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 1
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
log(s(0)) 0 (3)

1.1 Rule Removal

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

1.1.1 Rule Removal

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

1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[rand(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[half(x1)] =
1 1 0
1 1 1
1 1 1
· x1 +
1 0 0
0 0 0
0 0 0
[0] =
0 0 0
1 0 0
0 0 0
[s(x1)] =
1 0 0
0 0 1
0 1 0
· x1 +
0 0 0
1 0 0
0 0 0
all of the following rules can be deleted.
half(0) 0 (1)
half(s(s(x))) s(half(x)) (2)

1.1.1.1.1 R is empty

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