Certification Problem

Input (TPDB SRS_Standard/Secret_06_SRS/aprove03)

The rewrite relation of the following TRS is considered.

thrice(0(x1)) p(s(p(p(p(s(s(s(0(p(s(p(s(x1))))))))))))) (1)
thrice(s(x1)) p(p(s(s(half(p(p(s(s(p(s(sixtimes(p(s(p(p(s(s(x1)))))))))))))))))) (2)
half(0(x1)) p(p(s(s(p(s(0(p(s(s(s(s(x1)))))))))))) (3)
half(s(x1)) p(s(p(p(s(s(p(p(s(s(half(p(p(s(s(p(s(x1))))))))))))))))) (4)
half(s(s(x1))) p(s(p(s(s(p(p(s(s(half(p(p(s(s(p(s(x1)))))))))))))))) (5)
sixtimes(0(x1)) p(s(p(s(0(s(s(s(s(s(p(s(p(s(x1)))))))))))))) (6)
sixtimes(s(x1)) p(p(s(s(s(s(s(s(s(p(p(s(p(s(s(s(sixtimes(p(s(p(p(p(s(s(s(x1))))))))))))))))))))))))) (7)
p(p(s(x1))) p(x1) (8)
p(s(x1)) x1 (9)
p(0(x1)) 0(s(s(s(s(x1))))) (10)
0(x1) x1 (11)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by ttt2 @ termCOMP 2023)

1 Rule Removal

Using the linear polynomial interpretation over the arctic semiring over the integers
[sixtimes(x1)] = 8 · x1 + -∞
[thrice(x1)] = 15 · x1 + -∞
[p(x1)] = 0 · x1 + -∞
[half(x1)] = 4 · x1 + -∞
[0(x1)] = 8 · x1 + -∞
[s(x1)] = 0 · x1 + -∞
all of the following rules can be deleted.
thrice(0(x1)) p(s(p(p(p(s(s(s(0(p(s(p(s(x1))))))))))))) (1)
thrice(s(x1)) p(p(s(s(half(p(p(s(s(p(s(sixtimes(p(s(p(p(s(s(x1)))))))))))))))))) (2)
half(0(x1)) p(p(s(s(p(s(0(p(s(s(s(s(x1)))))))))))) (3)
sixtimes(0(x1)) p(s(p(s(0(s(s(s(s(s(p(s(p(s(x1)))))))))))))) (6)
0(x1) x1 (11)

1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
half#(s(x1)) p#(s(x1)) (12)
half#(s(x1)) p#(s(s(p(s(x1))))) (13)
half#(s(x1)) p#(p(s(s(p(s(x1)))))) (14)
half#(s(x1)) half#(p(p(s(s(p(s(x1))))))) (15)
half#(s(x1)) p#(s(s(half(p(p(s(s(p(s(x1)))))))))) (16)
half#(s(x1)) p#(p(s(s(half(p(p(s(s(p(s(x1))))))))))) (17)
half#(s(x1)) p#(s(s(p(p(s(s(half(p(p(s(s(p(s(x1)))))))))))))) (18)
half#(s(x1)) p#(p(s(s(p(p(s(s(half(p(p(s(s(p(s(x1))))))))))))))) (19)
half#(s(x1)) p#(s(p(p(s(s(p(p(s(s(half(p(p(s(s(p(s(x1))))))))))))))))) (20)
half#(s(s(x1))) p#(s(x1)) (21)
half#(s(s(x1))) p#(s(s(p(s(x1))))) (22)
half#(s(s(x1))) p#(p(s(s(p(s(x1)))))) (23)
half#(s(s(x1))) half#(p(p(s(s(p(s(x1))))))) (24)
half#(s(s(x1))) p#(s(s(half(p(p(s(s(p(s(x1)))))))))) (25)
half#(s(s(x1))) p#(p(s(s(half(p(p(s(s(p(s(x1))))))))))) (26)
half#(s(s(x1))) p#(s(s(p(p(s(s(half(p(p(s(s(p(s(x1)))))))))))))) (27)
half#(s(s(x1))) p#(s(p(s(s(p(p(s(s(half(p(p(s(s(p(s(x1)))))))))))))))) (28)
sixtimes#(s(x1)) p#(s(s(s(x1)))) (29)
sixtimes#(s(x1)) p#(p(s(s(s(x1))))) (30)
sixtimes#(s(x1)) p#(p(p(s(s(s(x1)))))) (31)
sixtimes#(s(x1)) p#(s(p(p(p(s(s(s(x1)))))))) (32)
sixtimes#(s(x1)) sixtimes#(p(s(p(p(p(s(s(s(x1))))))))) (33)
sixtimes#(s(x1)) p#(s(s(s(sixtimes(p(s(p(p(p(s(s(s(x1))))))))))))) (34)
sixtimes#(s(x1)) p#(s(p(s(s(s(sixtimes(p(s(p(p(p(s(s(s(x1))))))))))))))) (35)
sixtimes#(s(x1)) p#(p(s(p(s(s(s(sixtimes(p(s(p(p(p(s(s(s(x1)))))))))))))))) (36)
sixtimes#(s(x1)) p#(s(s(s(s(s(s(s(p(p(s(p(s(s(s(sixtimes(p(s(p(p(p(s(s(s(x1)))))))))))))))))))))))) (37)
sixtimes#(s(x1)) p#(p(s(s(s(s(s(s(s(p(p(s(p(s(s(s(sixtimes(p(s(p(p(p(s(s(s(x1))))))))))))))))))))))))) (38)
p#(p(s(x1))) p#(x1) (39)

1.1.1 Dependency Graph Processor

The dependency pairs are split into 3 components.