Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/Ex9_BLR02_Z)

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(filter(activate(Y),N,N))) (4)
nats(N) cons(N,n__nats(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)
activate(n__filter(X1,X2,X3)) filter(X1,X2,X3) (10)
activate(n__sieve(X)) sieve(X) (11)
activate(n__nats(X)) nats(X) (12)
activate(X) X (13)

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)))) (14)
activate#(n__filter(X1,X2,X3)) filter#(X1,X2,X3) (15)
sieve#(cons(s(N),Y)) filter#(activate(Y),N,N) (16)
sieve#(cons(0,Y)) activate#(Y) (17)
sieve#(cons(s(N),Y)) activate#(Y) (18)
activate#(n__nats(X)) nats#(X) (19)
zprimes# nats#(s(s(0))) (20)
filter#(cons(X,Y),s(N),M) activate#(Y) (21)
filter#(cons(X,Y),0,M) activate#(Y) (22)
activate#(n__sieve(X)) sieve#(X) (23)

1.1 Dependency Graph Processor

The dependency pairs are split into 1 component.