(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

filter(cons(X), 0, M) → cons(0)
filter(cons(X), s(N), M) → cons(X)
sieve(cons(0)) → cons(0)
sieve(cons(s(N))) → cons(s(N))
nats(N) → cons(N)
zprimessieve(nats(s(s(0))))

Q is empty.

(1) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Recursive path order with status [RPO].
Quasi-Precedence:
filter3 > 0 > [cons1, s1, sieve1, nats1]
zprimes > 0 > [cons1, s1, sieve1, nats1]

Status:
cons1: [1]
filter3: [1,3,2]
nats1: [1]
s1: [1]
0: multiset
zprimes: multiset
sieve1: [1]

With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

filter(cons(X), 0, M) → cons(0)
filter(cons(X), s(N), M) → cons(X)
sieve(cons(0)) → cons(0)
sieve(cons(s(N))) → cons(s(N))
zprimessieve(nats(s(s(0))))


(2) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

nats(N) → cons(N)

Q is empty.

(3) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Recursive path order with status [RPO].
Quasi-Precedence:
nats1 > cons1

Status:
cons1: multiset
nats1: multiset

With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

nats(N) → cons(N)


(4) Obligation:

Q restricted rewrite system:
R is empty.
Q is empty.

(5) RisEmptyProof (EQUIVALENT transformation)

The TRS R is empty. Hence, termination is trivially proven.

(6) TRUE