Certification Problem

Input (TPDB TRS_Standard/MNZ_10/nrvsq)

The rewrite relation of the following TRS is considered.

f(g(x)) g(g(f(x))) (1)
g(s(x)) s(s(g(x))) (2)
s(x) h(0,x) (3)
s(x) h(x,0) (4)
f(0) 0 (5)
s(s(s(0))) f(s(0)) (6)
f(s(0)) s(0) (7)
h(f(x),g(x)) f(s(x)) (8)
g(x) h(h(h(h(x,x),x),x),x) (9)
f(s(s(x))) h(f(x),g(h(x,x))) (10)
s(0) r(0) (11)
s(s(s(0))) r(s(0)) (12)
r(s(0)) s(0) (13)
g(x) r(x) (14)
s(0) p(0) (15)
s(s(0)) p(s(0)) (16)
p(s(0)) 0 (17)
s(s(s(s(s(0))))) p(s(s(0))) (18)
p(s(s(0))) s(s(s(0))) (19)
h(p(x),g(x)) p(s(x)) (20)
s(0) k(0) (21)
s(s(p(p(a)))) s(k(p(a))) (22)
s(k(p(a))) p(p(a)) (23)
g(x) k(x) (24)
a 0 (25)
s(h(r(k(p(x))),r(x))) h(r(r(p(x))),k(x)) (26)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by AProVE @ termCOMP 2023)

1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
f#(g(x)) g#(g(f(x))) (27)
f#(g(x)) g#(f(x)) (28)
f#(g(x)) f#(x) (29)
g#(s(x)) s#(s(g(x))) (30)
g#(s(x)) s#(g(x)) (31)
g#(s(x)) g#(x) (32)
s#(x) h#(0,x) (33)
s#(x) h#(x,0) (34)
s#(s(s(0))) f#(s(0)) (35)
h#(f(x),g(x)) f#(s(x)) (36)
h#(f(x),g(x)) s#(x) (37)
g#(x) h#(h(h(h(x,x),x),x),x) (38)
g#(x) h#(h(h(x,x),x),x) (39)
g#(x) h#(h(x,x),x) (40)
g#(x) h#(x,x) (41)
f#(s(s(x))) h#(f(x),g(h(x,x))) (42)
f#(s(s(x))) f#(x) (43)
f#(s(s(x))) g#(h(x,x)) (44)
f#(s(s(x))) h#(x,x) (45)
s#(0) r#(0) (46)
s#(s(s(0))) r#(s(0)) (47)
g#(x) r#(x) (48)
s#(0) p#(0) (49)
s#(s(0)) p#(s(0)) (50)
s#(s(s(s(s(0))))) p#(s(s(0))) (51)
p#(s(s(0))) s#(s(s(0))) (52)
h#(p(x),g(x)) p#(s(x)) (53)
h#(p(x),g(x)) s#(x) (54)
s#(s(p(p(a)))) s#(k(p(a))) (55)
s#(k(p(a))) p#(p(a)) (56)
s#(h(r(k(p(x))),r(x))) h#(r(r(p(x))),k(x)) (57)
s#(h(r(k(p(x))),r(x))) r#(r(p(x))) (58)
s#(h(r(k(p(x))),r(x))) r#(p(x)) (59)

1.1 Dependency Graph Processor

The dependency pairs are split into 1 component.