Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/Ex7_BLR02_FR)

The rewrite relation of the following TRS is considered.

from(X) cons(X,n__from(n__s(X))) (1)
head(cons(X,XS)) X (2)
2nd(cons(X,XS)) head(activate(XS)) (3)
take(0,XS) nil (4)
take(s(N),cons(X,XS)) cons(X,n__take(N,activate(XS))) (5)
sel(0,cons(X,XS)) X (6)
sel(s(N),cons(X,XS)) sel(N,activate(XS)) (7)
from(X) n__from(X) (8)
s(X) n__s(X) (9)
take(X1,X2) n__take(X1,X2) (10)
activate(n__from(X)) from(activate(X)) (11)
activate(n__s(X)) s(activate(X)) (12)
activate(n__take(X1,X2)) take(activate(X1),activate(X2)) (13)
activate(X) X (14)

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.
activate#(n__take(X1,X2)) activate#(X1) (15)
activate#(n__s(X)) s#(activate(X)) (16)
sel#(s(N),cons(X,XS)) activate#(XS) (17)
2nd#(cons(X,XS)) head#(activate(XS)) (18)
2nd#(cons(X,XS)) activate#(XS) (19)
activate#(n__s(X)) activate#(X) (20)
take#(s(N),cons(X,XS)) activate#(XS) (21)
activate#(n__from(X)) activate#(X) (22)
activate#(n__take(X1,X2)) activate#(X2) (23)
activate#(n__take(X1,X2)) take#(activate(X1),activate(X2)) (24)
sel#(s(N),cons(X,XS)) sel#(N,activate(XS)) (25)
activate#(n__from(X)) from#(activate(X)) (26)

1.1 Dependency Graph Processor

The dependency pairs are split into 2 components.