Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/Ex9_BLR02_FR)

The rewrite relation of the following TRS is considered.

filter(cons(X,Y),0,M) cons(0,n__filter(activate(Y),M,M)) (1)
filter(cons(X,Y),s(N),M) cons(X,n__filter(activate(Y),N,M)) (2)
sieve(cons(0,Y)) cons(0,n__sieve(activate(Y))) (3)
sieve(cons(s(N),Y)) cons(s(N),n__sieve(n__filter(activate(Y),N,N))) (4)
nats(N) cons(N,n__nats(n__s(N))) (5)
zprimes sieve(nats(s(s(0)))) (6)
filter(X1,X2,X3) n__filter(X1,X2,X3) (7)
sieve(X) n__sieve(X) (8)
nats(X) n__nats(X) (9)
s(X) n__s(X) (10)
activate(n__filter(X1,X2,X3)) filter(activate(X1),activate(X2),activate(X3)) (11)
activate(n__sieve(X)) sieve(activate(X)) (12)
activate(n__nats(X)) nats(activate(X)) (13)
activate(n__s(X)) s(activate(X)) (14)
activate(X) X (15)

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.
zprimes# sieve#(nats(s(s(0)))) (16)
activate#(n__nats(X)) nats#(activate(X)) (17)
activate#(n__sieve(X)) activate#(X) (18)
activate#(n__filter(X1,X2,X3)) activate#(X1) (19)
activate#(n__filter(X1,X2,X3)) activate#(X3) (20)
activate#(n__sieve(X)) sieve#(activate(X)) (21)
activate#(n__s(X)) s#(activate(X)) (22)
activate#(n__nats(X)) activate#(X) (23)
activate#(n__filter(X1,X2,X3)) activate#(X2) (24)
zprimes# s#(0) (25)
filter#(cons(X,Y),0,M) activate#(Y) (26)
sieve#(cons(0,Y)) activate#(Y) (27)
zprimes# nats#(s(s(0))) (28)
filter#(cons(X,Y),s(N),M) activate#(Y) (29)
activate#(n__filter(X1,X2,X3)) filter#(activate(X1),activate(X2),activate(X3)) (30)
activate#(n__s(X)) activate#(X) (31)
zprimes# s#(s(0)) (32)
sieve#(cons(s(N),Y)) activate#(Y) (33)

1.1 Dependency Graph Processor

The dependency pairs are split into 1 component.