(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)
zprimes → sieve(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))
zprimes → sieve(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