11.80/11.98 YES 11.80/11.98 11.80/11.98 Problem 1: 11.80/11.98 11.80/11.98 (VAR v_NonEmpty:S M:S N:S X:S X1:S X2:S X3:S) 11.80/11.98 (RULES 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ) 11.80/11.98 (STRATEGY INNERMOST) 11.80/11.98 11.80/11.98 Problem 1: 11.80/11.98 11.80/11.98 Dependency Pairs Processor: 11.80/11.98 -> Pairs: 11.80/11.98 U11#(mark(X1:S),X2:S,X3:S) -> U11#(X1:S,X2:S,X3:S) 11.80/11.98 U11#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U11#(X1:S,X2:S,X3:S) 11.80/11.98 U12#(mark(X1:S),X2:S,X3:S) -> U12#(X1:S,X2:S,X3:S) 11.80/11.98 U12#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U12#(X1:S,X2:S,X3:S) 11.80/11.98 U21#(mark(X1:S),X2:S,X3:S) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 U21#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 U22#(mark(X1:S),X2:S,X3:S) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 U22#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 ACTIVE(U11(X1:S,X2:S,X3:S)) -> U11#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U11(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U12(tt,M:S,N:S)) -> PLUS(N:S,M:S) 11.80/11.98 ACTIVE(U12(tt,M:S,N:S)) -> S(plus(N:S,M:S)) 11.80/11.98 ACTIVE(U12(X1:S,X2:S,X3:S)) -> U12#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U12(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U21(X1:S,X2:S,X3:S)) -> U21#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U21(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U22(tt,M:S,N:S)) -> PLUS(x(N:S,M:S),N:S) 11.80/11.98 ACTIVE(U22(tt,M:S,N:S)) -> X(N:S,M:S) 11.80/11.98 ACTIVE(U22(X1:S,X2:S,X3:S)) -> U22#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U22(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> PLUS(active(X1:S),X2:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> PLUS(X1:S,active(X2:S)) 11.80/11.98 ACTIVE(s(X:S)) -> ACTIVE(X:S) 11.80/11.98 ACTIVE(s(X:S)) -> S(active(X:S)) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> X(active(X1:S),X2:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> X(X1:S,active(X2:S)) 11.80/11.98 PLUS(mark(X1:S),X2:S) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(ok(X1:S),ok(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> U11#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> U12#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> U21#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> U22#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PLUS(proper(X1:S),proper(X2:S)) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(s(X:S)) -> PROPER(X:S) 11.80/11.98 PROPER(s(X:S)) -> S(proper(X:S)) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> X(proper(X1:S),proper(X2:S)) 11.80/11.98 S(mark(X:S)) -> S(X:S) 11.80/11.98 S(ok(X:S)) -> S(X:S) 11.80/11.98 TOP(mark(X:S)) -> PROPER(X:S) 11.80/11.98 TOP(mark(X:S)) -> TOP(proper(X:S)) 11.80/11.98 TOP(ok(X:S)) -> ACTIVE(X:S) 11.80/11.98 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.98 X(mark(X1:S),X2:S) -> X(X1:S,X2:S) 11.80/11.98 X(ok(X1:S),ok(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 11.80/11.98 Problem 1: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 U11#(mark(X1:S),X2:S,X3:S) -> U11#(X1:S,X2:S,X3:S) 11.80/11.98 U11#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U11#(X1:S,X2:S,X3:S) 11.80/11.98 U12#(mark(X1:S),X2:S,X3:S) -> U12#(X1:S,X2:S,X3:S) 11.80/11.98 U12#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U12#(X1:S,X2:S,X3:S) 11.80/11.98 U21#(mark(X1:S),X2:S,X3:S) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 U21#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 U22#(mark(X1:S),X2:S,X3:S) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 U22#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 ACTIVE(U11(X1:S,X2:S,X3:S)) -> U11#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U11(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U12(tt,M:S,N:S)) -> PLUS(N:S,M:S) 11.80/11.98 ACTIVE(U12(tt,M:S,N:S)) -> S(plus(N:S,M:S)) 11.80/11.98 ACTIVE(U12(X1:S,X2:S,X3:S)) -> U12#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U12(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U21(X1:S,X2:S,X3:S)) -> U21#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U21(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U22(tt,M:S,N:S)) -> PLUS(x(N:S,M:S),N:S) 11.80/11.98 ACTIVE(U22(tt,M:S,N:S)) -> X(N:S,M:S) 11.80/11.98 ACTIVE(U22(X1:S,X2:S,X3:S)) -> U22#(active(X1:S),X2:S,X3:S) 11.80/11.98 ACTIVE(U22(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> PLUS(active(X1:S),X2:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> PLUS(X1:S,active(X2:S)) 11.80/11.98 ACTIVE(s(X:S)) -> ACTIVE(X:S) 11.80/11.98 ACTIVE(s(X:S)) -> S(active(X:S)) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> X(active(X1:S),X2:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> X(X1:S,active(X2:S)) 11.80/11.98 PLUS(mark(X1:S),X2:S) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(ok(X1:S),ok(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> U11#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> U12#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> U21#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> U22#(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PLUS(proper(X1:S),proper(X2:S)) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(s(X:S)) -> PROPER(X:S) 11.80/11.98 PROPER(s(X:S)) -> S(proper(X:S)) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> X(proper(X1:S),proper(X2:S)) 11.80/11.98 S(mark(X:S)) -> S(X:S) 11.80/11.98 S(ok(X:S)) -> S(X:S) 11.80/11.98 TOP(mark(X:S)) -> PROPER(X:S) 11.80/11.98 TOP(mark(X:S)) -> TOP(proper(X:S)) 11.80/11.98 TOP(ok(X:S)) -> ACTIVE(X:S) 11.80/11.98 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.98 X(mark(X1:S),X2:S) -> X(X1:S,X2:S) 11.80/11.98 X(ok(X1:S),ok(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 X(mark(X1:S),X2:S) -> X(X1:S,X2:S) 11.80/11.98 X(ok(X1:S),ok(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 S(mark(X:S)) -> S(X:S) 11.80/11.98 S(ok(X:S)) -> S(X:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 PLUS(mark(X1:S),X2:S) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(ok(X1:S),ok(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 U22#(mark(X1:S),X2:S,X3:S) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 U22#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 U21#(mark(X1:S),X2:S,X3:S) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 U21#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 U12#(mark(X1:S),X2:S,X3:S) -> U12#(X1:S,X2:S,X3:S) 11.80/11.98 U12#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U12#(X1:S,X2:S,X3:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 U11#(mark(X1:S),X2:S,X3:S) -> U11#(X1:S,X2:S,X3:S) 11.80/11.98 U11#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U11#(X1:S,X2:S,X3:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 ACTIVE(U11(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U12(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U21(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(U22(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.98 ACTIVE(s(X:S)) -> ACTIVE(X:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.98 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(plus(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.98 PROPER(s(X:S)) -> PROPER(X:S) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.98 PROPER(x(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 TOP(mark(X:S)) -> TOP(proper(X:S)) 11.80/11.98 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 11.80/11.98 11.80/11.98 The problem is decomposed in 10 subproblems. 11.80/11.98 11.80/11.98 Problem 1.1: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 X(mark(X1:S),X2:S) -> X(X1:S,X2:S) 11.80/11.98 X(ok(X1:S),ok(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(X) = 1 11.80/11.98 11.80/11.98 Problem 1.1: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 11.80/11.98 Problem 1.1: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 X(X1:S,mark(X2:S)) -> X(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(X) = 2 11.80/11.98 11.80/11.98 Problem 1.1: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 Empty 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 There is no strongly connected component 11.80/11.98 11.80/11.98 The problem is finite. 11.80/11.98 11.80/11.98 Problem 1.2: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 S(mark(X:S)) -> S(X:S) 11.80/11.98 S(ok(X:S)) -> S(X:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(S) = 1 11.80/11.98 11.80/11.98 Problem 1.2: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 Empty 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 There is no strongly connected component 11.80/11.98 11.80/11.98 The problem is finite. 11.80/11.98 11.80/11.98 Problem 1.3: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 PLUS(mark(X1:S),X2:S) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(ok(X1:S),ok(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(PLUS) = 1 11.80/11.98 11.80/11.98 Problem 1.3: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 ->->Cycle: 11.80/11.98 ->->-> Pairs: 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 ->->-> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 11.80/11.98 Problem 1.3: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 PLUS(X1:S,mark(X2:S)) -> PLUS(X1:S,X2:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(PLUS) = 2 11.80/11.98 11.80/11.98 Problem 1.3: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 Empty 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 There is no strongly connected component 11.80/11.98 11.80/11.98 The problem is finite. 11.80/11.98 11.80/11.98 Problem 1.4: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 U22#(mark(X1:S),X2:S,X3:S) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 U22#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U22#(X1:S,X2:S,X3:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(U22#) = 1 11.80/11.98 11.80/11.98 Problem 1.4: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 Empty 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Strongly Connected Components: 11.80/11.98 There is no strongly connected component 11.80/11.98 11.80/11.98 The problem is finite. 11.80/11.98 11.80/11.98 Problem 1.5: 11.80/11.98 11.80/11.98 Subterm Processor: 11.80/11.98 -> Pairs: 11.80/11.98 U21#(mark(X1:S),X2:S,X3:S) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 U21#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U21#(X1:S,X2:S,X3:S) 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.98 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.98 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.98 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.98 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.98 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.98 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.98 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.98 active(plus(N:S,0)) -> mark(N:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.98 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.98 active(s(X:S)) -> s(active(X:S)) 11.80/11.98 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.98 active(x(N:S,0)) -> mark(0) 11.80/11.98 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.98 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.98 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.98 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.98 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.98 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.98 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.98 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.98 proper(0) -> ok(0) 11.80/11.98 proper(tt) -> ok(tt) 11.80/11.98 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.98 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.98 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.98 top(ok(X:S)) -> top(active(X:S)) 11.80/11.98 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.98 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.98 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.98 ->Projection: 11.80/11.98 pi(U21#) = 1 11.80/11.98 11.80/11.98 Problem 1.5: 11.80/11.98 11.80/11.98 SCC Processor: 11.80/11.98 -> Pairs: 11.80/11.98 Empty 11.80/11.98 -> Rules: 11.80/11.98 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.98 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.98 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.98 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.98 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 There is no strongly connected component 11.80/11.99 11.80/11.99 The problem is finite. 11.80/11.99 11.80/11.99 Problem 1.6: 11.80/11.99 11.80/11.99 Subterm Processor: 11.80/11.99 -> Pairs: 11.80/11.99 U12#(mark(X1:S),X2:S,X3:S) -> U12#(X1:S,X2:S,X3:S) 11.80/11.99 U12#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U12#(X1:S,X2:S,X3:S) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Projection: 11.80/11.99 pi(U12#) = 1 11.80/11.99 11.80/11.99 Problem 1.6: 11.80/11.99 11.80/11.99 SCC Processor: 11.80/11.99 -> Pairs: 11.80/11.99 Empty 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 There is no strongly connected component 11.80/11.99 11.80/11.99 The problem is finite. 11.80/11.99 11.80/11.99 Problem 1.7: 11.80/11.99 11.80/11.99 Subterm Processor: 11.80/11.99 -> Pairs: 11.80/11.99 U11#(mark(X1:S),X2:S,X3:S) -> U11#(X1:S,X2:S,X3:S) 11.80/11.99 U11#(ok(X1:S),ok(X2:S),ok(X3:S)) -> U11#(X1:S,X2:S,X3:S) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Projection: 11.80/11.99 pi(U11#) = 1 11.80/11.99 11.80/11.99 Problem 1.7: 11.80/11.99 11.80/11.99 SCC Processor: 11.80/11.99 -> Pairs: 11.80/11.99 Empty 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 There is no strongly connected component 11.80/11.99 11.80/11.99 The problem is finite. 11.80/11.99 11.80/11.99 Problem 1.8: 11.80/11.99 11.80/11.99 Subterm Processor: 11.80/11.99 -> Pairs: 11.80/11.99 ACTIVE(U11(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.99 ACTIVE(U12(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.99 ACTIVE(U21(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.99 ACTIVE(U22(X1:S,X2:S,X3:S)) -> ACTIVE(X1:S) 11.80/11.99 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.99 ACTIVE(plus(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.99 ACTIVE(s(X:S)) -> ACTIVE(X:S) 11.80/11.99 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X1:S) 11.80/11.99 ACTIVE(x(X1:S,X2:S)) -> ACTIVE(X2:S) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Projection: 11.80/11.99 pi(ACTIVE) = 1 11.80/11.99 11.80/11.99 Problem 1.8: 11.80/11.99 11.80/11.99 SCC Processor: 11.80/11.99 -> Pairs: 11.80/11.99 Empty 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 There is no strongly connected component 11.80/11.99 11.80/11.99 The problem is finite. 11.80/11.99 11.80/11.99 Problem 1.9: 11.80/11.99 11.80/11.99 Subterm Processor: 11.80/11.99 -> Pairs: 11.80/11.99 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.99 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.99 PROPER(U11(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.99 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.99 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.99 PROPER(U12(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.99 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.99 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.99 PROPER(U21(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.99 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X1:S) 11.80/11.99 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X2:S) 11.80/11.99 PROPER(U22(X1:S,X2:S,X3:S)) -> PROPER(X3:S) 11.80/11.99 PROPER(plus(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.99 PROPER(plus(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.99 PROPER(s(X:S)) -> PROPER(X:S) 11.80/11.99 PROPER(x(X1:S,X2:S)) -> PROPER(X1:S) 11.80/11.99 PROPER(x(X1:S,X2:S)) -> PROPER(X2:S) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Projection: 11.80/11.99 pi(PROPER) = 1 11.80/11.99 11.80/11.99 Problem 1.9: 11.80/11.99 11.80/11.99 SCC Processor: 11.80/11.99 -> Pairs: 11.80/11.99 Empty 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 There is no strongly connected component 11.80/11.99 11.80/11.99 The problem is finite. 11.80/11.99 11.80/11.99 Problem 1.10: 11.80/11.99 11.80/11.99 Reduction Pairs Processor: 11.80/11.99 -> Pairs: 11.80/11.99 TOP(mark(X:S)) -> TOP(proper(X:S)) 11.80/11.99 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 -> Usable rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Interpretation type: 11.80/11.99 Simple mixed 11.80/11.99 ->Coefficients: 11.80/11.99 All rationals 11.80/11.99 ->Dimension: 11.80/11.99 1 11.80/11.99 ->Bound: 11.80/11.99 2 11.80/11.99 ->Interpretation: 11.80/11.99 11.80/11.99 [U11](X1,X2,X3) = 2.X1 + 2.X2 + X3 + 1/2 11.80/11.99 [U12](X1,X2,X3) = X1.X2 + 1/2.X1.X3 + X1 + 2 11.80/11.99 [U21](X1,X2,X3) = 1/2.X1.X2.X3 + 1/2.X1.X2 + X1.X3 + X1 + X2 + 2.X3 + 1/2 11.80/11.99 [U22](X1,X2,X3) = X1.X2 + X1.X3 + X2.X3 + X1 + 2.X3 11.80/11.99 [active](X) = X 11.80/11.99 [plus](X1,X2) = X1 + 2.X2 + 1 11.80/11.99 [proper](X) = X 11.80/11.99 [s](X) = X + 2 11.80/11.99 [top](X) = 0 11.80/11.99 [x](X1,X2) = X1.X2 + 2.X1 + 2.X2 11.80/11.99 [0] = 2 11.80/11.99 [fSNonEmpty] = 0 11.80/11.99 [mark](X) = X + 1/2 11.80/11.99 [ok](X) = X 11.80/11.99 [tt] = 2 11.80/11.99 [U11#](X1,X2,X3) = 0 11.80/11.99 [U12#](X1,X2,X3) = 0 11.80/11.99 [U21#](X1,X2,X3) = 0 11.80/11.99 [U22#](X1,X2,X3) = 0 11.80/11.99 [ACTIVE](X) = 0 11.80/11.99 [PLUS](X1,X2) = 0 11.80/11.99 [PROPER](X) = 0 11.80/11.99 [S](X) = 0 11.80/11.99 [TOP](X) = X.X 11.80/11.99 [X](X1,X2) = 0 11.80/11.99 11.80/11.99 Problem 1.10: 11.80/11.99 11.80/11.99 SCC Processor: 11.80/11.99 -> Pairs: 11.80/11.99 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 ->->Cycle: 11.80/11.99 ->->-> Pairs: 11.80/11.99 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.99 ->->-> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 11.80/11.99 Problem 1.10: 11.80/11.99 11.80/11.99 Reduction Pairs Processor: 11.80/11.99 -> Pairs: 11.80/11.99 TOP(ok(X:S)) -> TOP(active(X:S)) 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 -> Usable rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Interpretation type: 11.80/11.99 Linear 11.80/11.99 ->Coefficients: 11.80/11.99 Natural Numbers 11.80/11.99 ->Dimension: 11.80/11.99 1 11.80/11.99 ->Bound: 11.80/11.99 2 11.80/11.99 ->Interpretation: 11.80/11.99 11.80/11.99 [U11](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 11.80/11.99 [U12](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 1 11.80/11.99 [U21](X1,X2,X3) = X1 + X2 + X3 + 2 11.80/11.99 [U22](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 11.80/11.99 [active](X) = 2.X + 1 11.80/11.99 [plus](X1,X2) = 2.X1 + 2.X2 + 2 11.80/11.99 [proper](X) = 0 11.80/11.99 [s](X) = X 11.80/11.99 [top](X) = 0 11.80/11.99 [x](X1,X2) = X1 + 2.X2 + 2 11.80/11.99 [0] = 2 11.80/11.99 [fSNonEmpty] = 0 11.80/11.99 [mark](X) = X + 2 11.80/11.99 [ok](X) = 2.X + 2 11.80/11.99 [tt] = 1 11.80/11.99 [U11#](X1,X2,X3) = 0 11.80/11.99 [U12#](X1,X2,X3) = 0 11.80/11.99 [U21#](X1,X2,X3) = 0 11.80/11.99 [U22#](X1,X2,X3) = 0 11.80/11.99 [ACTIVE](X) = 0 11.80/11.99 [PLUS](X1,X2) = 0 11.80/11.99 [PROPER](X) = 0 11.80/11.99 [S](X) = 0 11.80/11.99 [TOP](X) = 2.X 11.80/11.99 [X](X1,X2) = 0 11.80/11.99 11.80/11.99 Problem 1.10: 11.80/11.99 11.80/11.99 SCC Processor: 11.80/11.99 -> Pairs: 11.80/11.99 Empty 11.80/11.99 -> Rules: 11.80/11.99 U11(mark(X1:S),X2:S,X3:S) -> mark(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U11(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U11(X1:S,X2:S,X3:S)) 11.80/11.99 U12(mark(X1:S),X2:S,X3:S) -> mark(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U12(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U12(X1:S,X2:S,X3:S)) 11.80/11.99 U21(mark(X1:S),X2:S,X3:S) -> mark(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U21(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U21(X1:S,X2:S,X3:S)) 11.80/11.99 U22(mark(X1:S),X2:S,X3:S) -> mark(U22(X1:S,X2:S,X3:S)) 11.80/11.99 U22(ok(X1:S),ok(X2:S),ok(X3:S)) -> ok(U22(X1:S,X2:S,X3:S)) 11.80/11.99 active(U11(tt,M:S,N:S)) -> mark(U12(tt,M:S,N:S)) 11.80/11.99 active(U11(X1:S,X2:S,X3:S)) -> U11(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U12(tt,M:S,N:S)) -> mark(s(plus(N:S,M:S))) 11.80/11.99 active(U12(X1:S,X2:S,X3:S)) -> U12(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U21(tt,M:S,N:S)) -> mark(U22(tt,M:S,N:S)) 11.80/11.99 active(U21(X1:S,X2:S,X3:S)) -> U21(active(X1:S),X2:S,X3:S) 11.80/11.99 active(U22(tt,M:S,N:S)) -> mark(plus(x(N:S,M:S),N:S)) 11.80/11.99 active(U22(X1:S,X2:S,X3:S)) -> U22(active(X1:S),X2:S,X3:S) 11.80/11.99 active(plus(N:S,s(M:S))) -> mark(U11(tt,M:S,N:S)) 11.80/11.99 active(plus(N:S,0)) -> mark(N:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(active(X1:S),X2:S) 11.80/11.99 active(plus(X1:S,X2:S)) -> plus(X1:S,active(X2:S)) 11.80/11.99 active(s(X:S)) -> s(active(X:S)) 11.80/11.99 active(x(N:S,s(M:S))) -> mark(U21(tt,M:S,N:S)) 11.80/11.99 active(x(N:S,0)) -> mark(0) 11.80/11.99 active(x(X1:S,X2:S)) -> x(active(X1:S),X2:S) 11.80/11.99 active(x(X1:S,X2:S)) -> x(X1:S,active(X2:S)) 11.80/11.99 plus(mark(X1:S),X2:S) -> mark(plus(X1:S,X2:S)) 11.80/11.99 plus(ok(X1:S),ok(X2:S)) -> ok(plus(X1:S,X2:S)) 11.80/11.99 plus(X1:S,mark(X2:S)) -> mark(plus(X1:S,X2:S)) 11.80/11.99 proper(U11(X1:S,X2:S,X3:S)) -> U11(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U12(X1:S,X2:S,X3:S)) -> U12(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U21(X1:S,X2:S,X3:S)) -> U21(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(U22(X1:S,X2:S,X3:S)) -> U22(proper(X1:S),proper(X2:S),proper(X3:S)) 11.80/11.99 proper(plus(X1:S,X2:S)) -> plus(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(s(X:S)) -> s(proper(X:S)) 11.80/11.99 proper(x(X1:S,X2:S)) -> x(proper(X1:S),proper(X2:S)) 11.80/11.99 proper(0) -> ok(0) 11.80/11.99 proper(tt) -> ok(tt) 11.80/11.99 s(mark(X:S)) -> mark(s(X:S)) 11.80/11.99 s(ok(X:S)) -> ok(s(X:S)) 11.80/11.99 top(mark(X:S)) -> top(proper(X:S)) 11.80/11.99 top(ok(X:S)) -> top(active(X:S)) 11.80/11.99 x(mark(X1:S),X2:S) -> mark(x(X1:S,X2:S)) 11.80/11.99 x(ok(X1:S),ok(X2:S)) -> ok(x(X1:S,X2:S)) 11.80/11.99 x(X1:S,mark(X2:S)) -> mark(x(X1:S,X2:S)) 11.80/11.99 ->Strongly Connected Components: 11.80/11.99 There is no strongly connected component 11.80/11.99 11.80/11.99 The problem is finite. 11.80/11.99 EOF