Certification Problem

Input (TPDB SRS_Standard/Secret_06_SRS/aprove05)

The rewrite relation of the following TRS is considered.

twoto(0(x1)) p(p(s(s(s(p(p(p(s(s(s(0(p(p(s(s(x1)))))))))))))))) (1)
twoto(s(x1)) p(p(s(s(p(p(p(s(s(s(twice(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1)))))))))))))))))))))))))) (2)
twice(0(x1)) p(s(p(s(0(s(p(s(s(s(s(p(s(x1))))))))))))) (3)
twice(s(x1)) s(p(p(p(p(s(s(s(s(s(twice(p(s(p(s(p(s(p(s(x1))))))))))))))))))) (4)
p(p(s(x1))) p(x1) (5)
p(s(x1)) x1 (6)
p(0(x1)) 0(s(s(s(s(p(s(x1))))))) (7)
0(x1) x1 (8)

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
[twice(x1)] = 0 · x1 + -∞
[twoto(x1)] = 0 · x1 + -∞
[p(x1)] = 0 · x1 + -∞
[0(x1)] = 1 · x1 + -∞
[s(x1)] = 0 · x1 + -∞
all of the following rules can be deleted.
0(x1) x1 (8)

1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
twoto#(0(x1)) p#(s(s(x1))) (9)
twoto#(0(x1)) p#(p(s(s(x1)))) (10)
twoto#(0(x1)) p#(s(s(s(0(p(p(s(s(x1))))))))) (11)
twoto#(0(x1)) p#(p(s(s(s(0(p(p(s(s(x1)))))))))) (12)
twoto#(0(x1)) p#(p(p(s(s(s(0(p(p(s(s(x1))))))))))) (13)
twoto#(0(x1)) p#(s(s(s(p(p(p(s(s(s(0(p(p(s(s(x1))))))))))))))) (14)
twoto#(0(x1)) p#(p(s(s(s(p(p(p(s(s(s(0(p(p(s(s(x1)))))))))))))))) (15)
twoto#(s(x1)) p#(s(x1)) (16)
twoto#(s(x1)) p#(s(p(s(x1)))) (17)
twoto#(s(x1)) twoto#(p(s(p(s(x1))))) (18)
twoto#(s(x1)) p#(s(s(s(twoto(p(s(p(s(x1))))))))) (19)
twoto#(s(x1)) p#(p(s(s(s(twoto(p(s(p(s(x1)))))))))) (20)
twoto#(s(x1)) p#(p(p(s(s(s(twoto(p(s(p(s(x1))))))))))) (21)
twoto#(s(x1)) p#(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1)))))))))))))) (22)
twoto#(s(x1)) p#(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1))))))))))))))) (23)
twoto#(s(x1)) twice#(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1)))))))))))))))) (24)
twoto#(s(x1)) p#(s(s(s(twice(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1)))))))))))))))))))) (25)
twoto#(s(x1)) p#(p(s(s(s(twice(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1))))))))))))))))))))) (26)
twoto#(s(x1)) p#(p(p(s(s(s(twice(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1)))))))))))))))))))))) (27)
twoto#(s(x1)) p#(s(s(p(p(p(s(s(s(twice(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1))))))))))))))))))))))))) (28)
twoto#(s(x1)) p#(p(s(s(p(p(p(s(s(s(twice(p(p(s(s(p(p(p(s(s(s(twoto(p(s(p(s(x1)))))))))))))))))))))))))) (29)
twice#(0(x1)) p#(s(x1)) (30)
twice#(0(x1)) p#(s(s(s(s(p(s(x1))))))) (31)
twice#(0(x1)) p#(s(0(s(p(s(s(s(s(p(s(x1))))))))))) (32)
twice#(0(x1)) p#(s(p(s(0(s(p(s(s(s(s(p(s(x1))))))))))))) (33)
twice#(s(x1)) p#(s(x1)) (34)
twice#(s(x1)) p#(s(p(s(x1)))) (35)
twice#(s(x1)) p#(s(p(s(p(s(x1)))))) (36)
twice#(s(x1)) p#(s(p(s(p(s(p(s(x1)))))))) (37)
twice#(s(x1)) twice#(p(s(p(s(p(s(p(s(x1))))))))) (38)
twice#(s(x1)) p#(s(s(s(s(s(twice(p(s(p(s(p(s(p(s(x1))))))))))))))) (39)
twice#(s(x1)) p#(p(s(s(s(s(s(twice(p(s(p(s(p(s(p(s(x1)))))))))))))))) (40)
twice#(s(x1)) p#(p(p(s(s(s(s(s(twice(p(s(p(s(p(s(p(s(x1))))))))))))))))) (41)
twice#(s(x1)) p#(p(p(p(s(s(s(s(s(twice(p(s(p(s(p(s(p(s(x1)))))))))))))))))) (42)
p#(p(s(x1))) p#(x1) (43)
p#(0(x1)) p#(s(x1)) (44)

1.1.1 Dependency Graph Processor

The dependency pairs are split into 3 components.