Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/ExSec11_1_Luc02a_FR)

The rewrite relation of the following TRS is considered.

terms(N) cons(recip(sqr(N)),n__terms(n__s(N))) (1)
sqr(0) 0 (2)
sqr(s(X)) s(add(sqr(X),dbl(X))) (3)
dbl(0) 0 (4)
dbl(s(X)) s(s(dbl(X))) (5)
add(0,X) X (6)
add(s(X),Y) s(add(X,Y)) (7)
first(0,X) nil (8)
first(s(X),cons(Y,Z)) cons(Y,n__first(X,activate(Z))) (9)
half(0) 0 (10)
half(s(0)) 0 (11)
half(s(s(X))) s(half(X)) (12)
half(dbl(X)) X (13)
terms(X) n__terms(X) (14)
s(X) n__s(X) (15)
first(X1,X2) n__first(X1,X2) (16)
activate(n__terms(X)) terms(activate(X)) (17)
activate(n__s(X)) s(activate(X)) (18)
activate(n__first(X1,X2)) first(activate(X1),activate(X2)) (19)
activate(X) X (20)

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.
terms#(N) sqr#(N) (21)
sqr#(s(X)) s#(add(sqr(X),dbl(X))) (22)
sqr#(s(X)) add#(sqr(X),dbl(X)) (23)
sqr#(s(X)) sqr#(X) (24)
sqr#(s(X)) dbl#(X) (25)
dbl#(s(X)) s#(s(dbl(X))) (26)
dbl#(s(X)) s#(dbl(X)) (27)
dbl#(s(X)) dbl#(X) (28)
add#(s(X),Y) s#(add(X,Y)) (29)
add#(s(X),Y) add#(X,Y) (30)
first#(s(X),cons(Y,Z)) activate#(Z) (31)
half#(s(s(X))) s#(half(X)) (32)
half#(s(s(X))) half#(X) (33)
activate#(n__terms(X)) terms#(activate(X)) (34)
activate#(n__terms(X)) activate#(X) (35)
activate#(n__s(X)) s#(activate(X)) (36)
activate#(n__s(X)) activate#(X) (37)
activate#(n__first(X1,X2)) first#(activate(X1),activate(X2)) (38)
activate#(n__first(X1,X2)) activate#(X1) (39)
activate#(n__first(X1,X2)) activate#(X2) (40)

1.1 Dependency Graph Processor

The dependency pairs are split into 5 components.