Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/Ex2_Luc03b_FR)

The rewrite relation of the following TRS is considered.

fst(0,Z) nil (1)
fst(s(X),cons(Y,Z)) cons(Y,n__fst(activate(X),activate(Z))) (2)
from(X) cons(X,n__from(n__s(X))) (3)
add(0,X) X (4)
add(s(X),Y) s(n__add(activate(X),Y)) (5)
len(nil) 0 (6)
len(cons(X,Z)) s(n__len(activate(Z))) (7)
fst(X1,X2) n__fst(X1,X2) (8)
from(X) n__from(X) (9)
s(X) n__s(X) (10)
add(X1,X2) n__add(X1,X2) (11)
len(X) n__len(X) (12)
activate(n__fst(X1,X2)) fst(activate(X1),activate(X2)) (13)
activate(n__from(X)) from(activate(X)) (14)
activate(n__s(X)) s(X) (15)
activate(n__add(X1,X2)) add(activate(X1),activate(X2)) (16)
activate(n__len(X)) len(activate(X)) (17)
activate(X) X (18)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by NaTT @ termCOMP 2023)

1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
fst#(s(X),cons(Y,Z)) activate#(Z) (19)
activate#(n__from(X)) from#(activate(X)) (20)
activate#(n__len(X)) activate#(X) (21)
len#(cons(X,Z)) activate#(Z) (22)
add#(s(X),Y) activate#(X) (23)
activate#(n__len(X)) len#(activate(X)) (24)
activate#(n__add(X1,X2)) add#(activate(X1),activate(X2)) (25)
activate#(n__from(X)) activate#(X) (26)
add#(s(X),Y) s#(n__add(activate(X),Y)) (27)
activate#(n__fst(X1,X2)) activate#(X2) (28)
activate#(n__s(X)) s#(X) (29)
activate#(n__add(X1,X2)) activate#(X2) (30)
activate#(n__fst(X1,X2)) fst#(activate(X1),activate(X2)) (31)
fst#(s(X),cons(Y,Z)) activate#(X) (32)
len#(cons(X,Z)) s#(n__len(activate(Z))) (33)
activate#(n__add(X1,X2)) activate#(X1) (34)
activate#(n__fst(X1,X2)) activate#(X1) (35)

1.1 Dependency Graph Processor

The dependency pairs are split into 1 component.