0.00/0.39 YES 0.00/0.39 0.00/0.39 Problem 1: 0.00/0.39 0.00/0.39 (VAR v_NonEmpty:S M:S N:S X:S X1:S X2:S X3:S Y:S) 0.00/0.39 (RULES 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ) 0.00/0.39 (STRATEGY INNERMOST) 0.00/0.39 0.00/0.39 Problem 1: 0.00/0.39 0.00/0.39 Dependency Pairs Processor: 0.00/0.39 -> Pairs: 0.00/0.39 ACTIVE(cons(X1:S,X2:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(cons(X1:S,X2:S)) -> CONS(active(X1:S),X2:S) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),s(N:S),M:S)) -> CONS(X:S,filter(Y:S,N:S,M:S)) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),s(N:S),M:S)) -> FILTER(Y:S,N:S,M:S) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),0,M:S)) -> CONS(0,filter(Y:S,M:S,M:S)) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),0,M:S)) -> FILTER(Y:S,M:S,M:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X2:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X3:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> FILTER(active(X1:S),X2:S,X3:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> FILTER(X1:S,active(X2:S),X3:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> FILTER(X1:S,X2:S,active(X3:S)) 0.00/0.39 ACTIVE(nats(N:S)) -> CONS(N:S,nats(s(N:S))) 0.00/0.39 ACTIVE(nats(N:S)) -> NATS(s(N:S)) 0.00/0.39 ACTIVE(nats(N:S)) -> S(N:S) 0.00/0.39 ACTIVE(nats(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(nats(X:S)) -> NATS(active(X:S)) 0.00/0.39 ACTIVE(s(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(s(X:S)) -> S(active(X:S)) 0.00/0.39 ACTIVE(sieve(cons(s(N:S),Y:S))) -> CONS(s(N:S),sieve(filter(Y:S,N:S,N:S))) 0.00/0.39 ACTIVE(sieve(cons(s(N:S),Y:S))) -> FILTER(Y:S,N:S,N:S) 0.00/0.39 ACTIVE(sieve(cons(s(N:S),Y:S))) -> SIEVE(filter(Y:S,N:S,N:S)) 0.00/0.39 ACTIVE(sieve(cons(0,Y:S))) -> CONS(0,sieve(Y:S)) 0.00/0.39 ACTIVE(sieve(cons(0,Y:S))) -> SIEVE(Y:S) 0.00/0.39 ACTIVE(sieve(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(sieve(X:S)) -> SIEVE(active(X:S)) 0.00/0.39 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.39 CONS(ok(X1:S),ok(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.39 FILTER(mark(X1:S),X2:S,X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(ok(X1:S),ok(X2:S),ok(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 NATS(mark(X:S)) -> NATS(X:S) 0.00/0.39 NATS(ok(X:S)) -> NATS(X:S) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> CONS(proper(X1:S),proper(X2:S)) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> FILTER(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 0.00/0.39 PROPER(nats(X:S)) -> NATS(proper(X:S)) 0.00/0.39 PROPER(nats(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(s(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(s(X:S)) -> S(proper(X:S)) 0.00/0.39 PROPER(sieve(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(sieve(X:S)) -> SIEVE(proper(X:S)) 0.00/0.39 S(mark(X:S)) -> S(X:S) 0.00/0.39 S(ok(X:S)) -> S(X:S) 0.00/0.39 SIEVE(mark(X:S)) -> SIEVE(X:S) 0.00/0.39 SIEVE(ok(X:S)) -> SIEVE(X:S) 0.00/0.39 TOP(mark(X:S)) -> PROPER(X:S) 0.00/0.39 TOP(mark(X:S)) -> TOP(proper(X:S)) 0.00/0.39 TOP(ok(X:S)) -> ACTIVE(X:S) 0.00/0.39 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 0.00/0.39 Problem 1: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 ACTIVE(cons(X1:S,X2:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(cons(X1:S,X2:S)) -> CONS(active(X1:S),X2:S) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),s(N:S),M:S)) -> CONS(X:S,filter(Y:S,N:S,M:S)) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),s(N:S),M:S)) -> FILTER(Y:S,N:S,M:S) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),0,M:S)) -> CONS(0,filter(Y:S,M:S,M:S)) 0.00/0.39 ACTIVE(filter(cons(X:S,Y:S),0,M:S)) -> FILTER(Y:S,M:S,M:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X2:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X3:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> FILTER(active(X1:S),X2:S,X3:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> FILTER(X1:S,active(X2:S),X3:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> FILTER(X1:S,X2:S,active(X3:S)) 0.00/0.39 ACTIVE(nats(N:S)) -> CONS(N:S,nats(s(N:S))) 0.00/0.39 ACTIVE(nats(N:S)) -> NATS(s(N:S)) 0.00/0.39 ACTIVE(nats(N:S)) -> S(N:S) 0.00/0.39 ACTIVE(nats(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(nats(X:S)) -> NATS(active(X:S)) 0.00/0.39 ACTIVE(s(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(s(X:S)) -> S(active(X:S)) 0.00/0.39 ACTIVE(sieve(cons(s(N:S),Y:S))) -> CONS(s(N:S),sieve(filter(Y:S,N:S,N:S))) 0.00/0.39 ACTIVE(sieve(cons(s(N:S),Y:S))) -> FILTER(Y:S,N:S,N:S) 0.00/0.39 ACTIVE(sieve(cons(s(N:S),Y:S))) -> SIEVE(filter(Y:S,N:S,N:S)) 0.00/0.39 ACTIVE(sieve(cons(0,Y:S))) -> CONS(0,sieve(Y:S)) 0.00/0.39 ACTIVE(sieve(cons(0,Y:S))) -> SIEVE(Y:S) 0.00/0.39 ACTIVE(sieve(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(sieve(X:S)) -> SIEVE(active(X:S)) 0.00/0.39 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.39 CONS(ok(X1:S),ok(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.39 FILTER(mark(X1:S),X2:S,X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(ok(X1:S),ok(X2:S),ok(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 NATS(mark(X:S)) -> NATS(X:S) 0.00/0.39 NATS(ok(X:S)) -> NATS(X:S) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> CONS(proper(X1:S),proper(X2:S)) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> FILTER(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 0.00/0.39 PROPER(nats(X:S)) -> NATS(proper(X:S)) 0.00/0.39 PROPER(nats(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(s(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(s(X:S)) -> S(proper(X:S)) 0.00/0.39 PROPER(sieve(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(sieve(X:S)) -> SIEVE(proper(X:S)) 0.00/0.39 S(mark(X:S)) -> S(X:S) 0.00/0.39 S(ok(X:S)) -> S(X:S) 0.00/0.39 SIEVE(mark(X:S)) -> SIEVE(X:S) 0.00/0.39 SIEVE(ok(X:S)) -> SIEVE(X:S) 0.00/0.39 TOP(mark(X:S)) -> PROPER(X:S) 0.00/0.39 TOP(mark(X:S)) -> TOP(proper(X:S)) 0.00/0.39 TOP(ok(X:S)) -> ACTIVE(X:S) 0.00/0.39 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 SIEVE(mark(X:S)) -> SIEVE(X:S) 0.00/0.39 SIEVE(ok(X:S)) -> SIEVE(X:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 S(mark(X:S)) -> S(X:S) 0.00/0.39 S(ok(X:S)) -> S(X:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 NATS(mark(X:S)) -> NATS(X:S) 0.00/0.39 NATS(ok(X:S)) -> NATS(X:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 FILTER(mark(X1:S),X2:S,X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(ok(X1:S),ok(X2:S),ok(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.39 CONS(ok(X1:S),ok(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 0.00/0.39 PROPER(nats(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(s(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(sieve(X:S)) -> PROPER(X:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 ACTIVE(cons(X1:S,X2:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X2:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X3:S) 0.00/0.39 ACTIVE(nats(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(s(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(sieve(X:S)) -> ACTIVE(X:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 TOP(mark(X:S)) -> TOP(proper(X:S)) 0.00/0.39 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 0.00/0.39 0.00/0.39 The problem is decomposed in 8 subproblems. 0.00/0.39 0.00/0.39 Problem 1.1: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 SIEVE(mark(X:S)) -> SIEVE(X:S) 0.00/0.39 SIEVE(ok(X:S)) -> SIEVE(X:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(SIEVE) = 1 0.00/0.39 0.00/0.39 Problem 1.1: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.2: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 S(mark(X:S)) -> S(X:S) 0.00/0.39 S(ok(X:S)) -> S(X:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(S) = 1 0.00/0.39 0.00/0.39 Problem 1.2: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.3: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 NATS(mark(X:S)) -> NATS(X:S) 0.00/0.39 NATS(ok(X:S)) -> NATS(X:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(NATS) = 1 0.00/0.39 0.00/0.39 Problem 1.3: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.4: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 FILTER(mark(X1:S),X2:S,X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(ok(X1:S),ok(X2:S),ok(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(FILTER) = 1 0.00/0.39 0.00/0.39 Problem 1.4: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 0.00/0.39 Problem 1.4: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 FILTER(X1:S,mark(X2:S),X3:S) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(FILTER) = 2 0.00/0.39 0.00/0.39 Problem 1.4: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 0.00/0.39 Problem 1.4: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 FILTER(X1:S,X2:S,mark(X3:S)) -> FILTER(X1:S,X2:S,X3:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(FILTER) = 3 0.00/0.39 0.00/0.39 Problem 1.4: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.5: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 CONS(mark(X1:S),X2:S) -> CONS(X1:S,X2:S) 0.00/0.39 CONS(ok(X1:S),ok(X2:S)) -> CONS(X1:S,X2:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(CONS) = 1 0.00/0.39 0.00/0.39 Problem 1.5: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.6: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(cons(X1:S,X2:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 0.00/0.39 PROPER(filter(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 0.00/0.39 PROPER(nats(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(s(X:S)) -> PROPER(X:S) 0.00/0.39 PROPER(sieve(X:S)) -> PROPER(X:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(PROPER) = 1 0.00/0.39 0.00/0.39 Problem 1.6: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.7: 0.00/0.39 0.00/0.39 Subterm Processor: 0.00/0.39 -> Pairs: 0.00/0.39 ACTIVE(cons(X1:S,X2:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X2:S) 0.00/0.39 ACTIVE(filter(X1:S,X2:S,X3:S)) -> ACTIVE(X3:S) 0.00/0.39 ACTIVE(nats(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(s(X:S)) -> ACTIVE(X:S) 0.00/0.39 ACTIVE(sieve(X:S)) -> ACTIVE(X:S) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Projection: 0.00/0.39 pi(ACTIVE) = 1 0.00/0.39 0.00/0.39 Problem 1.7: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 Empty 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 There is no strongly connected component 0.00/0.39 0.00/0.39 The problem is finite. 0.00/0.39 0.00/0.39 Problem 1.8: 0.00/0.39 0.00/0.39 Reduction Pairs Processor: 0.00/0.39 -> Pairs: 0.00/0.39 TOP(mark(X:S)) -> TOP(proper(X:S)) 0.00/0.39 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 -> Usable rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 ->Interpretation type: 0.00/0.39 Linear 0.00/0.39 ->Coefficients: 0.00/0.39 All rationals 0.00/0.39 ->Dimension: 0.00/0.39 1 0.00/0.39 ->Bound: 0.00/0.39 2 0.00/0.39 ->Interpretation: 0.00/0.39 0.00/0.39 [active](X) = X 0.00/0.39 [cons](X1,X2) = X1 0.00/0.39 [filter](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 0.00/0.39 [nats](X) = X + 1/2 0.00/0.39 [proper](X) = X 0.00/0.39 [s](X) = 2.X 0.00/0.39 [sieve](X) = 2.X + 1/2 0.00/0.39 [top](X) = 0 0.00/0.39 [0] = 0 0.00/0.39 [fSNonEmpty] = 0 0.00/0.39 [mark](X) = X + 1/2 0.00/0.39 [ok](X) = X 0.00/0.39 [zprimes] = 2 0.00/0.39 [ACTIVE](X) = 0 0.00/0.39 [CONS](X1,X2) = 0 0.00/0.39 [FILTER](X1,X2,X3) = 0 0.00/0.39 [NATS](X) = 0 0.00/0.39 [PROPER](X) = 0 0.00/0.39 [S](X) = 0 0.00/0.39 [SIEVE](X) = 0 0.00/0.39 [TOP](X) = 1/2.X 0.00/0.39 0.00/0.39 Problem 1.8: 0.00/0.39 0.00/0.39 SCC Processor: 0.00/0.39 -> Pairs: 0.00/0.39 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.39 -> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.39 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.39 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.39 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.39 proper(0) -> ok(0) 0.00/0.39 proper(zprimes) -> ok(zprimes) 0.00/0.39 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.39 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.39 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.39 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.39 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.39 top(ok(X:S)) -> top(active(X:S)) 0.00/0.39 ->Strongly Connected Components: 0.00/0.39 ->->Cycle: 0.00/0.39 ->->-> Pairs: 0.00/0.39 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.39 ->->-> Rules: 0.00/0.39 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.39 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.39 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.39 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.39 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.39 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.39 active(s(X:S)) -> s(active(X:S)) 0.00/0.39 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.39 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.39 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.39 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.39 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.39 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.39 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.39 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.39 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.39 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.39 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.40 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.40 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.40 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.40 proper(0) -> ok(0) 0.00/0.40 proper(zprimes) -> ok(zprimes) 0.00/0.40 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.40 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.40 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.40 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.40 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.40 top(ok(X:S)) -> top(active(X:S)) 0.00/0.40 0.00/0.40 Problem 1.8: 0.00/0.40 0.00/0.40 Reduction Pairs Processor: 0.00/0.40 -> Pairs: 0.00/0.40 TOP(ok(X:S)) -> TOP(active(X:S)) 0.00/0.40 -> Rules: 0.00/0.40 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.40 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.40 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.40 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.40 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.40 active(s(X:S)) -> s(active(X:S)) 0.00/0.40 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.40 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.40 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.40 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.40 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.40 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.40 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.40 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.40 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.40 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.40 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.40 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.40 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.40 proper(0) -> ok(0) 0.00/0.40 proper(zprimes) -> ok(zprimes) 0.00/0.40 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.40 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.40 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.40 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.40 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.40 top(ok(X:S)) -> top(active(X:S)) 0.00/0.40 -> Usable rules: 0.00/0.40 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.40 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.40 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.40 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.40 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.40 active(s(X:S)) -> s(active(X:S)) 0.00/0.40 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.40 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.40 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.40 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.40 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.40 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.40 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.40 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.40 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.40 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.40 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.40 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.40 ->Interpretation type: 0.00/0.40 Linear 0.00/0.40 ->Coefficients: 0.00/0.40 Natural Numbers 0.00/0.40 ->Dimension: 0.00/0.40 1 0.00/0.40 ->Bound: 0.00/0.40 2 0.00/0.40 ->Interpretation: 0.00/0.40 0.00/0.40 [active](X) = 2.X + 1 0.00/0.40 [cons](X1,X2) = X1 + 2.X2 + 2 0.00/0.40 [filter](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 0.00/0.40 [nats](X) = 2.X + 1 0.00/0.40 [proper](X) = 0 0.00/0.40 [s](X) = 2.X + 2 0.00/0.40 [sieve](X) = 2.X + 1 0.00/0.40 [top](X) = 0 0.00/0.40 [0] = 0 0.00/0.40 [fSNonEmpty] = 0 0.00/0.40 [mark](X) = 2 0.00/0.40 [ok](X) = 2.X + 2 0.00/0.40 [zprimes] = 2 0.00/0.40 [ACTIVE](X) = 0 0.00/0.40 [CONS](X1,X2) = 0 0.00/0.40 [FILTER](X1,X2,X3) = 0 0.00/0.40 [NATS](X) = 0 0.00/0.40 [PROPER](X) = 0 0.00/0.40 [S](X) = 0 0.00/0.40 [SIEVE](X) = 0 0.00/0.40 [TOP](X) = 2.X 0.00/0.40 0.00/0.40 Problem 1.8: 0.00/0.40 0.00/0.40 SCC Processor: 0.00/0.40 -> Pairs: 0.00/0.40 Empty 0.00/0.40 -> Rules: 0.00/0.40 active(cons(X1:S,X2:S)) -> cons(active(X1:S),X2:S) 0.00/0.40 active(filter(cons(X:S,Y:S),s(N:S),M:S)) -> mark(cons(X:S,filter(Y:S,N:S,M:S))) 0.00/0.40 active(filter(cons(X:S,Y:S),0,M:S)) -> mark(cons(0,filter(Y:S,M:S,M:S))) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(active(X1:S),X2:S,X3:S) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,active(X2:S),X3:S) 0.00/0.40 active(filter(X1:S,X2:S,X3:S)) -> filter(X1:S,X2:S,active(X3:S)) 0.00/0.40 active(nats(N:S)) -> mark(cons(N:S,nats(s(N:S)))) 0.00/0.40 active(nats(X:S)) -> nats(active(X:S)) 0.00/0.40 active(s(X:S)) -> s(active(X:S)) 0.00/0.40 active(sieve(cons(s(N:S),Y:S))) -> mark(cons(s(N:S),sieve(filter(Y:S,N:S,N:S)))) 0.00/0.40 active(sieve(cons(0,Y:S))) -> mark(cons(0,sieve(Y:S))) 0.00/0.40 active(sieve(X:S)) -> sieve(active(X:S)) 0.00/0.40 active(zprimes) -> mark(sieve(nats(s(s(0))))) 0.00/0.40 cons(mark(X1:S),X2:S) -> mark(cons(X1:S,X2:S)) 0.00/0.40 cons(ok(X1:S),ok(X2:S)) -> ok(cons(X1:S,X2:S)) 0.00/0.40 filter(mark(X1:S),X2:S,X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(X1:S,mark(X2:S),X3:S) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 filter(X1:S,X2:S,mark(X3:S)) -> mark(filter(X1:S,X2:S,X3:S)) 0.00/0.40 nats(mark(X:S)) -> mark(nats(X:S)) 0.00/0.40 nats(ok(X:S)) -> ok(nats(X:S)) 0.00/0.40 proper(cons(X1:S,X2:S)) -> cons(proper(X1:S),proper(X2:S)) 0.00/0.40 proper(filter(X1:S,X2:S,X3:S)) -> filter(proper(X1:S),proper(X2:S),proper(X3:S)) 0.00/0.40 proper(nats(X:S)) -> nats(proper(X:S)) 0.00/0.40 proper(s(X:S)) -> s(proper(X:S)) 0.00/0.40 proper(sieve(X:S)) -> sieve(proper(X:S)) 0.00/0.40 proper(0) -> ok(0) 0.00/0.40 proper(zprimes) -> ok(zprimes) 0.00/0.40 s(mark(X:S)) -> mark(s(X:S)) 0.00/0.40 s(ok(X:S)) -> ok(s(X:S)) 0.00/0.40 sieve(mark(X:S)) -> mark(sieve(X:S)) 0.00/0.40 sieve(ok(X:S)) -> ok(sieve(X:S)) 0.00/0.40 top(mark(X:S)) -> top(proper(X:S)) 0.00/0.40 top(ok(X:S)) -> top(active(X:S)) 0.00/0.40 ->Strongly Connected Components: 0.00/0.40 There is no strongly connected component 0.00/0.40 0.00/0.40 The problem is finite. 0.00/0.40 EOF