1.03/1.09 YES 1.03/1.09 1.03/1.09 Problem 1: 1.03/1.09 1.03/1.09 (VAR v_NonEmpty:S I:S P:S V:S V1:S V2:S X:S X1:S X2:S Y:S Z:S) 1.03/1.09 (RULES 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.09 active(isQid(u)) -> mark(tt) 1.03/1.09 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.09 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.09 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.09 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.09 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.09 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.09 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.09 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.09 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.09 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.09 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.09 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.09 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.09 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.09 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.09 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.09 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.09 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.09 proper(a) -> ok(a) 1.03/1.09 proper(e) -> ok(e) 1.03/1.09 proper(i) -> ok(i) 1.03/1.09 proper(nil) -> ok(nil) 1.03/1.09 proper(o) -> ok(o) 1.03/1.09 proper(tt) -> ok(tt) 1.03/1.09 proper(u) -> ok(u) 1.03/1.09 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.09 top(ok(X:S)) -> top(active(X:S)) 1.03/1.09 ) 1.03/1.09 (STRATEGY INNERMOST) 1.03/1.09 1.03/1.09 Problem 1: 1.03/1.09 1.03/1.09 Dependency Pairs Processor: 1.03/1.09 -> Pairs: 1.03/1.09 U11#(mark(X:S)) -> U11#(X:S) 1.03/1.09 U11#(ok(X:S)) -> U11#(X:S) 1.03/1.09 U21#(mark(X1:S),X2:S) -> U21#(X1:S,X2:S) 1.03/1.09 U21#(ok(X1:S),ok(X2:S)) -> U21#(X1:S,X2:S) 1.03/1.09 U22#(mark(X:S)) -> U22#(X:S) 1.03/1.09 U22#(ok(X:S)) -> U22#(X:S) 1.03/1.09 U31#(mark(X:S)) -> U31#(X:S) 1.03/1.09 U31#(ok(X:S)) -> U31#(X:S) 1.03/1.09 U41#(mark(X1:S),X2:S) -> U41#(X1:S,X2:S) 1.03/1.09 U41#(ok(X1:S),ok(X2:S)) -> U41#(X1:S,X2:S) 1.03/1.09 U42#(mark(X:S)) -> U42#(X:S) 1.03/1.09 U42#(ok(X:S)) -> U42#(X:S) 1.03/1.09 U51#(mark(X1:S),X2:S) -> U51#(X1:S,X2:S) 1.03/1.09 U51#(ok(X1:S),ok(X2:S)) -> U51#(X1:S,X2:S) 1.03/1.09 U52#(mark(X:S)) -> U52#(X:S) 1.03/1.09 U52#(ok(X:S)) -> U52#(X:S) 1.03/1.09 U61#(mark(X:S)) -> U61#(X:S) 1.03/1.09 U61#(ok(X:S)) -> U61#(X:S) 1.03/1.09 U71#(mark(X1:S),X2:S) -> U71#(X1:S,X2:S) 1.03/1.09 U71#(ok(X1:S),ok(X2:S)) -> U71#(X1:S,X2:S) 1.03/1.09 U72#(mark(X:S)) -> U72#(X:S) 1.03/1.09 U72#(ok(X:S)) -> U72#(X:S) 1.03/1.09 U81#(mark(X:S)) -> U81#(X:S) 1.03/1.09 U81#(ok(X:S)) -> U81#(X:S) 1.03/1.09 __#(mark(X1:S),X2:S) -> __#(X1:S,X2:S) 1.03/1.09 __#(ok(X1:S),ok(X2:S)) -> __#(X1:S,X2:S) 1.03/1.09 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.03/1.09 ACTIVE(U11(X:S)) -> U11#(active(X:S)) 1.03/1.09 ACTIVE(U11(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U21(tt,V2:S)) -> U22#(isList(V2:S)) 1.03/1.09 ACTIVE(U21(tt,V2:S)) -> ISLIST(V2:S) 1.03/1.09 ACTIVE(U21(X1:S,X2:S)) -> U21#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U21(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U22(X:S)) -> U22#(active(X:S)) 1.03/1.09 ACTIVE(U22(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U31(X:S)) -> U31#(active(X:S)) 1.03/1.09 ACTIVE(U31(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U41(tt,V2:S)) -> U42#(isNeList(V2:S)) 1.03/1.09 ACTIVE(U41(tt,V2:S)) -> ISNELIST(V2:S) 1.03/1.09 ACTIVE(U41(X1:S,X2:S)) -> U41#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U41(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U42(X:S)) -> U42#(active(X:S)) 1.03/1.09 ACTIVE(U42(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U51(tt,V2:S)) -> U52#(isList(V2:S)) 1.03/1.09 ACTIVE(U51(tt,V2:S)) -> ISLIST(V2:S) 1.03/1.09 ACTIVE(U51(X1:S,X2:S)) -> U51#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U51(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U52(X:S)) -> U52#(active(X:S)) 1.03/1.09 ACTIVE(U52(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U61(X:S)) -> U61#(active(X:S)) 1.03/1.09 ACTIVE(U61(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U71(tt,P:S)) -> U72#(isPal(P:S)) 1.03/1.09 ACTIVE(U71(tt,P:S)) -> ISPAL(P:S) 1.03/1.09 ACTIVE(U71(X1:S,X2:S)) -> U71#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U71(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U72(X:S)) -> U72#(active(X:S)) 1.03/1.09 ACTIVE(U72(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U81(X:S)) -> U81#(active(X:S)) 1.03/1.09 ACTIVE(U81(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(__(__(X:S,Y:S),Z:S)) -> __#(X:S,__(Y:S,Z:S)) 1.03/1.09 ACTIVE(__(__(X:S,Y:S),Z:S)) -> __#(Y:S,Z:S) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> __#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> __#(X1:S,active(X2:S)) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X2:S) 1.03/1.09 ACTIVE(isList(__(V1:S,V2:S))) -> U21#(isList(V1:S),V2:S) 1.03/1.09 ACTIVE(isList(__(V1:S,V2:S))) -> ISLIST(V1:S) 1.03/1.09 ACTIVE(isList(V:S)) -> U11#(isNeList(V:S)) 1.03/1.09 ACTIVE(isList(V:S)) -> ISNELIST(V:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> U41#(isList(V1:S),V2:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> U51#(isNeList(V1:S),V2:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> ISLIST(V1:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> ISNELIST(V1:S) 1.03/1.09 ACTIVE(isNeList(V:S)) -> U31#(isQid(V:S)) 1.03/1.09 ACTIVE(isNeList(V:S)) -> ISQID(V:S) 1.03/1.09 ACTIVE(isNePal(__(I:S,__(P:S,I:S)))) -> U71#(isQid(I:S),P:S) 1.03/1.09 ACTIVE(isNePal(__(I:S,__(P:S,I:S)))) -> ISQID(I:S) 1.03/1.09 ACTIVE(isNePal(V:S)) -> U61#(isQid(V:S)) 1.03/1.09 ACTIVE(isNePal(V:S)) -> ISQID(V:S) 1.03/1.09 ACTIVE(isPal(V:S)) -> U81#(isNePal(V:S)) 1.03/1.09 ACTIVE(isPal(V:S)) -> ISNEPAL(V:S) 1.03/1.09 ISLIST(ok(X:S)) -> ISLIST(X:S) 1.03/1.09 ISNELIST(ok(X:S)) -> ISNELIST(X:S) 1.03/1.09 ISNEPAL(ok(X:S)) -> ISNEPAL(X:S) 1.03/1.09 ISPAL(ok(X:S)) -> ISPAL(X:S) 1.03/1.09 ISQID(ok(X:S)) -> ISQID(X:S) 1.03/1.09 PROPER(U11(X:S)) -> U11#(proper(X:S)) 1.03/1.09 PROPER(U11(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U21(X1:S,X2:S)) -> U21#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U21(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U21(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U22(X:S)) -> U22#(proper(X:S)) 1.03/1.09 PROPER(U22(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U31(X:S)) -> U31#(proper(X:S)) 1.03/1.09 PROPER(U31(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U41(X1:S,X2:S)) -> U41#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U41(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U41(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U42(X:S)) -> U42#(proper(X:S)) 1.03/1.09 PROPER(U42(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U51(X1:S,X2:S)) -> U51#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U51(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U51(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U52(X:S)) -> U52#(proper(X:S)) 1.03/1.09 PROPER(U52(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U61(X:S)) -> U61#(proper(X:S)) 1.03/1.09 PROPER(U61(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U71(X1:S,X2:S)) -> U71#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U71(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U71(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U72(X:S)) -> U72#(proper(X:S)) 1.03/1.09 PROPER(U72(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U81(X:S)) -> U81#(proper(X:S)) 1.03/1.09 PROPER(U81(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(__(X1:S,X2:S)) -> __#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(__(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(__(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(isList(X:S)) -> ISLIST(proper(X:S)) 1.03/1.09 PROPER(isList(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isNeList(X:S)) -> ISNELIST(proper(X:S)) 1.03/1.09 PROPER(isNeList(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isNePal(X:S)) -> ISNEPAL(proper(X:S)) 1.03/1.09 PROPER(isNePal(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isPal(X:S)) -> ISPAL(proper(X:S)) 1.03/1.09 PROPER(isPal(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isQid(X:S)) -> ISQID(proper(X:S)) 1.03/1.09 PROPER(isQid(X:S)) -> PROPER(X:S) 1.03/1.09 TOP(mark(X:S)) -> PROPER(X:S) 1.03/1.09 TOP(mark(X:S)) -> TOP(proper(X:S)) 1.03/1.09 TOP(ok(X:S)) -> ACTIVE(X:S) 1.03/1.09 TOP(ok(X:S)) -> TOP(active(X:S)) 1.03/1.09 -> Rules: 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.09 active(isQid(u)) -> mark(tt) 1.03/1.09 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.09 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.09 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.09 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.09 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.09 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.09 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.09 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.09 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.09 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.09 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.09 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.09 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.09 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.09 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.09 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.09 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.09 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.09 proper(a) -> ok(a) 1.03/1.09 proper(e) -> ok(e) 1.03/1.09 proper(i) -> ok(i) 1.03/1.09 proper(nil) -> ok(nil) 1.03/1.09 proper(o) -> ok(o) 1.03/1.09 proper(tt) -> ok(tt) 1.03/1.09 proper(u) -> ok(u) 1.03/1.09 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.09 top(ok(X:S)) -> top(active(X:S)) 1.03/1.09 1.03/1.09 Problem 1: 1.03/1.09 1.03/1.09 SCC Processor: 1.03/1.09 -> Pairs: 1.03/1.09 U11#(mark(X:S)) -> U11#(X:S) 1.03/1.09 U11#(ok(X:S)) -> U11#(X:S) 1.03/1.09 U21#(mark(X1:S),X2:S) -> U21#(X1:S,X2:S) 1.03/1.09 U21#(ok(X1:S),ok(X2:S)) -> U21#(X1:S,X2:S) 1.03/1.09 U22#(mark(X:S)) -> U22#(X:S) 1.03/1.09 U22#(ok(X:S)) -> U22#(X:S) 1.03/1.09 U31#(mark(X:S)) -> U31#(X:S) 1.03/1.09 U31#(ok(X:S)) -> U31#(X:S) 1.03/1.09 U41#(mark(X1:S),X2:S) -> U41#(X1:S,X2:S) 1.03/1.09 U41#(ok(X1:S),ok(X2:S)) -> U41#(X1:S,X2:S) 1.03/1.09 U42#(mark(X:S)) -> U42#(X:S) 1.03/1.09 U42#(ok(X:S)) -> U42#(X:S) 1.03/1.09 U51#(mark(X1:S),X2:S) -> U51#(X1:S,X2:S) 1.03/1.09 U51#(ok(X1:S),ok(X2:S)) -> U51#(X1:S,X2:S) 1.03/1.09 U52#(mark(X:S)) -> U52#(X:S) 1.03/1.09 U52#(ok(X:S)) -> U52#(X:S) 1.03/1.09 U61#(mark(X:S)) -> U61#(X:S) 1.03/1.09 U61#(ok(X:S)) -> U61#(X:S) 1.03/1.09 U71#(mark(X1:S),X2:S) -> U71#(X1:S,X2:S) 1.03/1.09 U71#(ok(X1:S),ok(X2:S)) -> U71#(X1:S,X2:S) 1.03/1.09 U72#(mark(X:S)) -> U72#(X:S) 1.03/1.09 U72#(ok(X:S)) -> U72#(X:S) 1.03/1.09 U81#(mark(X:S)) -> U81#(X:S) 1.03/1.09 U81#(ok(X:S)) -> U81#(X:S) 1.03/1.09 __#(mark(X1:S),X2:S) -> __#(X1:S,X2:S) 1.03/1.09 __#(ok(X1:S),ok(X2:S)) -> __#(X1:S,X2:S) 1.03/1.09 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.03/1.09 ACTIVE(U11(X:S)) -> U11#(active(X:S)) 1.03/1.09 ACTIVE(U11(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U21(tt,V2:S)) -> U22#(isList(V2:S)) 1.03/1.09 ACTIVE(U21(tt,V2:S)) -> ISLIST(V2:S) 1.03/1.09 ACTIVE(U21(X1:S,X2:S)) -> U21#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U21(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U22(X:S)) -> U22#(active(X:S)) 1.03/1.09 ACTIVE(U22(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U31(X:S)) -> U31#(active(X:S)) 1.03/1.09 ACTIVE(U31(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U41(tt,V2:S)) -> U42#(isNeList(V2:S)) 1.03/1.09 ACTIVE(U41(tt,V2:S)) -> ISNELIST(V2:S) 1.03/1.09 ACTIVE(U41(X1:S,X2:S)) -> U41#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U41(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U42(X:S)) -> U42#(active(X:S)) 1.03/1.09 ACTIVE(U42(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U51(tt,V2:S)) -> U52#(isList(V2:S)) 1.03/1.09 ACTIVE(U51(tt,V2:S)) -> ISLIST(V2:S) 1.03/1.09 ACTIVE(U51(X1:S,X2:S)) -> U51#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U51(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U52(X:S)) -> U52#(active(X:S)) 1.03/1.09 ACTIVE(U52(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U61(X:S)) -> U61#(active(X:S)) 1.03/1.09 ACTIVE(U61(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U71(tt,P:S)) -> U72#(isPal(P:S)) 1.03/1.09 ACTIVE(U71(tt,P:S)) -> ISPAL(P:S) 1.03/1.09 ACTIVE(U71(X1:S,X2:S)) -> U71#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(U71(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(U72(X:S)) -> U72#(active(X:S)) 1.03/1.09 ACTIVE(U72(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(U81(X:S)) -> U81#(active(X:S)) 1.03/1.09 ACTIVE(U81(X:S)) -> ACTIVE(X:S) 1.03/1.09 ACTIVE(__(__(X:S,Y:S),Z:S)) -> __#(X:S,__(Y:S,Z:S)) 1.03/1.09 ACTIVE(__(__(X:S,Y:S),Z:S)) -> __#(Y:S,Z:S) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> __#(active(X1:S),X2:S) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> __#(X1:S,active(X2:S)) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.09 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X2:S) 1.03/1.09 ACTIVE(isList(__(V1:S,V2:S))) -> U21#(isList(V1:S),V2:S) 1.03/1.09 ACTIVE(isList(__(V1:S,V2:S))) -> ISLIST(V1:S) 1.03/1.09 ACTIVE(isList(V:S)) -> U11#(isNeList(V:S)) 1.03/1.09 ACTIVE(isList(V:S)) -> ISNELIST(V:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> U41#(isList(V1:S),V2:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> U51#(isNeList(V1:S),V2:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> ISLIST(V1:S) 1.03/1.09 ACTIVE(isNeList(__(V1:S,V2:S))) -> ISNELIST(V1:S) 1.03/1.09 ACTIVE(isNeList(V:S)) -> U31#(isQid(V:S)) 1.03/1.09 ACTIVE(isNeList(V:S)) -> ISQID(V:S) 1.03/1.09 ACTIVE(isNePal(__(I:S,__(P:S,I:S)))) -> U71#(isQid(I:S),P:S) 1.03/1.09 ACTIVE(isNePal(__(I:S,__(P:S,I:S)))) -> ISQID(I:S) 1.03/1.09 ACTIVE(isNePal(V:S)) -> U61#(isQid(V:S)) 1.03/1.09 ACTIVE(isNePal(V:S)) -> ISQID(V:S) 1.03/1.09 ACTIVE(isPal(V:S)) -> U81#(isNePal(V:S)) 1.03/1.09 ACTIVE(isPal(V:S)) -> ISNEPAL(V:S) 1.03/1.09 ISLIST(ok(X:S)) -> ISLIST(X:S) 1.03/1.09 ISNELIST(ok(X:S)) -> ISNELIST(X:S) 1.03/1.09 ISNEPAL(ok(X:S)) -> ISNEPAL(X:S) 1.03/1.09 ISPAL(ok(X:S)) -> ISPAL(X:S) 1.03/1.09 ISQID(ok(X:S)) -> ISQID(X:S) 1.03/1.09 PROPER(U11(X:S)) -> U11#(proper(X:S)) 1.03/1.09 PROPER(U11(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U21(X1:S,X2:S)) -> U21#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U21(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U21(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U22(X:S)) -> U22#(proper(X:S)) 1.03/1.09 PROPER(U22(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U31(X:S)) -> U31#(proper(X:S)) 1.03/1.09 PROPER(U31(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U41(X1:S,X2:S)) -> U41#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U41(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U41(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U42(X:S)) -> U42#(proper(X:S)) 1.03/1.09 PROPER(U42(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U51(X1:S,X2:S)) -> U51#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U51(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U51(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U52(X:S)) -> U52#(proper(X:S)) 1.03/1.09 PROPER(U52(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U61(X:S)) -> U61#(proper(X:S)) 1.03/1.09 PROPER(U61(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U71(X1:S,X2:S)) -> U71#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(U71(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(U71(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(U72(X:S)) -> U72#(proper(X:S)) 1.03/1.09 PROPER(U72(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(U81(X:S)) -> U81#(proper(X:S)) 1.03/1.09 PROPER(U81(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(__(X1:S,X2:S)) -> __#(proper(X1:S),proper(X2:S)) 1.03/1.09 PROPER(__(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.09 PROPER(__(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.09 PROPER(isList(X:S)) -> ISLIST(proper(X:S)) 1.03/1.09 PROPER(isList(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isNeList(X:S)) -> ISNELIST(proper(X:S)) 1.03/1.09 PROPER(isNeList(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isNePal(X:S)) -> ISNEPAL(proper(X:S)) 1.03/1.09 PROPER(isNePal(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isPal(X:S)) -> ISPAL(proper(X:S)) 1.03/1.09 PROPER(isPal(X:S)) -> PROPER(X:S) 1.03/1.09 PROPER(isQid(X:S)) -> ISQID(proper(X:S)) 1.03/1.09 PROPER(isQid(X:S)) -> PROPER(X:S) 1.03/1.09 TOP(mark(X:S)) -> PROPER(X:S) 1.03/1.09 TOP(mark(X:S)) -> TOP(proper(X:S)) 1.03/1.09 TOP(ok(X:S)) -> ACTIVE(X:S) 1.03/1.09 TOP(ok(X:S)) -> TOP(active(X:S)) 1.03/1.09 -> Rules: 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.09 active(isQid(u)) -> mark(tt) 1.03/1.09 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.09 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.09 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.09 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.09 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.09 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.09 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.09 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.09 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.09 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.09 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.09 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.09 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.09 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.09 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.09 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.09 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.09 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.09 proper(a) -> ok(a) 1.03/1.09 proper(e) -> ok(e) 1.03/1.09 proper(i) -> ok(i) 1.03/1.09 proper(nil) -> ok(nil) 1.03/1.09 proper(o) -> ok(o) 1.03/1.09 proper(tt) -> ok(tt) 1.03/1.09 proper(u) -> ok(u) 1.03/1.09 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.09 top(ok(X:S)) -> top(active(X:S)) 1.03/1.09 ->Strongly Connected Components: 1.03/1.09 ->->Cycle: 1.03/1.09 ->->-> Pairs: 1.03/1.09 ISQID(ok(X:S)) -> ISQID(X:S) 1.03/1.09 ->->-> Rules: 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.09 active(isQid(u)) -> mark(tt) 1.03/1.09 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.09 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.09 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.09 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.09 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.09 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.09 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.09 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.09 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.09 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.09 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.09 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.09 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.09 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.09 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.09 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.09 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.09 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.09 proper(a) -> ok(a) 1.03/1.09 proper(e) -> ok(e) 1.03/1.09 proper(i) -> ok(i) 1.03/1.09 proper(nil) -> ok(nil) 1.03/1.09 proper(o) -> ok(o) 1.03/1.09 proper(tt) -> ok(tt) 1.03/1.09 proper(u) -> ok(u) 1.03/1.09 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.09 top(ok(X:S)) -> top(active(X:S)) 1.03/1.09 ->->Cycle: 1.03/1.09 ->->-> Pairs: 1.03/1.09 ISPAL(ok(X:S)) -> ISPAL(X:S) 1.03/1.09 ->->-> Rules: 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.09 active(isQid(u)) -> mark(tt) 1.03/1.09 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.09 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.09 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.09 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.09 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.09 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.09 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.09 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.09 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.09 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.09 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.09 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.09 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.09 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.09 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.09 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.09 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.09 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.09 proper(a) -> ok(a) 1.03/1.09 proper(e) -> ok(e) 1.03/1.09 proper(i) -> ok(i) 1.03/1.09 proper(nil) -> ok(nil) 1.03/1.09 proper(o) -> ok(o) 1.03/1.09 proper(tt) -> ok(tt) 1.03/1.09 proper(u) -> ok(u) 1.03/1.09 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.09 top(ok(X:S)) -> top(active(X:S)) 1.03/1.09 ->->Cycle: 1.03/1.09 ->->-> Pairs: 1.03/1.09 ISNEPAL(ok(X:S)) -> ISNEPAL(X:S) 1.03/1.09 ->->-> Rules: 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.09 active(isQid(u)) -> mark(tt) 1.03/1.09 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.09 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.09 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.09 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.09 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.09 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.09 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.09 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.09 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.09 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.09 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.09 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.09 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.09 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.09 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.09 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.09 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.09 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.09 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.09 proper(a) -> ok(a) 1.03/1.09 proper(e) -> ok(e) 1.03/1.09 proper(i) -> ok(i) 1.03/1.09 proper(nil) -> ok(nil) 1.03/1.09 proper(o) -> ok(o) 1.03/1.09 proper(tt) -> ok(tt) 1.03/1.09 proper(u) -> ok(u) 1.03/1.09 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.09 top(ok(X:S)) -> top(active(X:S)) 1.03/1.09 ->->Cycle: 1.03/1.09 ->->-> Pairs: 1.03/1.09 ISNELIST(ok(X:S)) -> ISNELIST(X:S) 1.03/1.09 ->->-> Rules: 1.03/1.09 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.09 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.09 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.09 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.09 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.09 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.09 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.09 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.09 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.09 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.09 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.09 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.09 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.09 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.09 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.09 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.09 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.09 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.09 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.09 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.09 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.09 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.09 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.09 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.09 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.09 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.09 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.09 active(U11(tt)) -> mark(tt) 1.03/1.09 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.09 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.09 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.09 active(U22(tt)) -> mark(tt) 1.03/1.09 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.09 active(U31(tt)) -> mark(tt) 1.03/1.09 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.09 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.09 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.09 active(U42(tt)) -> mark(tt) 1.03/1.09 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.09 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.09 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.09 active(U52(tt)) -> mark(tt) 1.03/1.09 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.09 active(U61(tt)) -> mark(tt) 1.03/1.09 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.09 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.09 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.09 active(U72(tt)) -> mark(tt) 1.03/1.09 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.09 active(U81(tt)) -> mark(tt) 1.03/1.09 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.09 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.09 active(__(nil,X:S)) -> mark(X:S) 1.03/1.09 active(__(X:S,nil)) -> mark(X:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.09 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.09 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.09 active(isList(nil)) -> mark(tt) 1.03/1.09 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.09 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.09 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.09 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.09 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.09 active(isPal(nil)) -> mark(tt) 1.03/1.09 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.09 active(isQid(a)) -> mark(tt) 1.03/1.09 active(isQid(e)) -> mark(tt) 1.03/1.09 active(isQid(i)) -> mark(tt) 1.03/1.09 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 ISLIST(ok(X:S)) -> ISLIST(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 __#(mark(X1:S),X2:S) -> __#(X1:S,X2:S) 1.03/1.10 __#(ok(X1:S),ok(X2:S)) -> __#(X1:S,X2:S) 1.03/1.10 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U81#(mark(X:S)) -> U81#(X:S) 1.03/1.10 U81#(ok(X:S)) -> U81#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U72#(mark(X:S)) -> U72#(X:S) 1.03/1.10 U72#(ok(X:S)) -> U72#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U71#(mark(X1:S),X2:S) -> U71#(X1:S,X2:S) 1.03/1.10 U71#(ok(X1:S),ok(X2:S)) -> U71#(X1:S,X2:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U61#(mark(X:S)) -> U61#(X:S) 1.03/1.10 U61#(ok(X:S)) -> U61#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U52#(mark(X:S)) -> U52#(X:S) 1.03/1.10 U52#(ok(X:S)) -> U52#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U51#(mark(X1:S),X2:S) -> U51#(X1:S,X2:S) 1.03/1.10 U51#(ok(X1:S),ok(X2:S)) -> U51#(X1:S,X2:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U42#(mark(X:S)) -> U42#(X:S) 1.03/1.10 U42#(ok(X:S)) -> U42#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U41#(mark(X1:S),X2:S) -> U41#(X1:S,X2:S) 1.03/1.10 U41#(ok(X1:S),ok(X2:S)) -> U41#(X1:S,X2:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U31#(mark(X:S)) -> U31#(X:S) 1.03/1.10 U31#(ok(X:S)) -> U31#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U22#(mark(X:S)) -> U22#(X:S) 1.03/1.10 U22#(ok(X:S)) -> U22#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U21#(mark(X1:S),X2:S) -> U21#(X1:S,X2:S) 1.03/1.10 U21#(ok(X1:S),ok(X2:S)) -> U21#(X1:S,X2:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 U11#(mark(X:S)) -> U11#(X:S) 1.03/1.10 U11#(ok(X:S)) -> U11#(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 ACTIVE(U11(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U21(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.10 ACTIVE(U22(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U31(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U41(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.10 ACTIVE(U42(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U51(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.10 ACTIVE(U52(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U61(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U71(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.10 ACTIVE(U72(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(U81(X:S)) -> ACTIVE(X:S) 1.03/1.10 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X1:S) 1.03/1.10 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X2:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 PROPER(U11(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U21(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.10 PROPER(U21(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.10 PROPER(U22(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U31(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U41(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.10 PROPER(U41(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.10 PROPER(U42(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U51(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.10 PROPER(U51(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.10 PROPER(U52(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U61(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U71(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.10 PROPER(U71(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.10 PROPER(U72(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(U81(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(__(X1:S,X2:S)) -> PROPER(X1:S) 1.03/1.10 PROPER(__(X1:S,X2:S)) -> PROPER(X2:S) 1.03/1.10 PROPER(isList(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(isNeList(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(isNePal(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(isPal(X:S)) -> PROPER(X:S) 1.03/1.10 PROPER(isQid(X:S)) -> PROPER(X:S) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->->Cycle: 1.03/1.10 ->->-> Pairs: 1.03/1.10 TOP(mark(X:S)) -> TOP(proper(X:S)) 1.03/1.10 TOP(ok(X:S)) -> TOP(active(X:S)) 1.03/1.10 ->->-> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 1.03/1.10 1.03/1.10 The problem is decomposed in 21 subproblems. 1.03/1.10 1.03/1.10 Problem 1.1: 1.03/1.10 1.03/1.10 Subterm Processor: 1.03/1.10 -> Pairs: 1.03/1.10 ISQID(ok(X:S)) -> ISQID(X:S) 1.03/1.10 -> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.10 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.10 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.10 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.10 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.10 proper(a) -> ok(a) 1.03/1.10 proper(e) -> ok(e) 1.03/1.10 proper(i) -> ok(i) 1.03/1.10 proper(nil) -> ok(nil) 1.03/1.10 proper(o) -> ok(o) 1.03/1.10 proper(tt) -> ok(tt) 1.03/1.10 proper(u) -> ok(u) 1.03/1.10 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.10 top(ok(X:S)) -> top(active(X:S)) 1.03/1.10 ->Projection: 1.03/1.10 pi(ISQID) = 1 1.03/1.10 1.03/1.10 Problem 1.1: 1.03/1.10 1.03/1.10 SCC Processor: 1.03/1.10 -> Pairs: 1.03/1.10 Empty 1.03/1.10 -> Rules: 1.03/1.10 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.10 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.10 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.10 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.10 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.10 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.10 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.10 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.10 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.10 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.10 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.10 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.10 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.10 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.10 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.10 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.10 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.10 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.10 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.10 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.10 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.10 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.10 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.10 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.10 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.10 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.10 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.10 active(U11(tt)) -> mark(tt) 1.03/1.10 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.10 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.10 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.10 active(U22(tt)) -> mark(tt) 1.03/1.10 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.10 active(U31(tt)) -> mark(tt) 1.03/1.10 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.10 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.10 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.10 active(U42(tt)) -> mark(tt) 1.03/1.10 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.10 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.10 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.10 active(U52(tt)) -> mark(tt) 1.03/1.10 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.10 active(U61(tt)) -> mark(tt) 1.03/1.10 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.10 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.10 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.10 active(U72(tt)) -> mark(tt) 1.03/1.10 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.10 active(U81(tt)) -> mark(tt) 1.03/1.10 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.10 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.10 active(__(nil,X:S)) -> mark(X:S) 1.03/1.10 active(__(X:S,nil)) -> mark(X:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.10 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.10 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.10 active(isList(nil)) -> mark(tt) 1.03/1.10 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.10 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.10 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.10 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.10 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.10 active(isPal(nil)) -> mark(tt) 1.03/1.10 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.10 active(isQid(a)) -> mark(tt) 1.03/1.10 active(isQid(e)) -> mark(tt) 1.03/1.10 active(isQid(i)) -> mark(tt) 1.03/1.10 active(isQid(o)) -> mark(tt) 1.03/1.10 active(isQid(u)) -> mark(tt) 1.03/1.10 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.10 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.10 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.10 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.10 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.10 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.10 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.10 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.10 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.10 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.10 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.10 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.10 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.10 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.10 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Strongly Connected Components: 1.03/1.11 There is no strongly connected component 1.03/1.11 1.03/1.11 The problem is finite. 1.03/1.11 1.03/1.11 Problem 1.2: 1.03/1.11 1.03/1.11 Subterm Processor: 1.03/1.11 -> Pairs: 1.03/1.11 ISPAL(ok(X:S)) -> ISPAL(X:S) 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Projection: 1.03/1.11 pi(ISPAL) = 1 1.03/1.11 1.03/1.11 Problem 1.2: 1.03/1.11 1.03/1.11 SCC Processor: 1.03/1.11 -> Pairs: 1.03/1.11 Empty 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Strongly Connected Components: 1.03/1.11 There is no strongly connected component 1.03/1.11 1.03/1.11 The problem is finite. 1.03/1.11 1.03/1.11 Problem 1.3: 1.03/1.11 1.03/1.11 Subterm Processor: 1.03/1.11 -> Pairs: 1.03/1.11 ISNEPAL(ok(X:S)) -> ISNEPAL(X:S) 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Projection: 1.03/1.11 pi(ISNEPAL) = 1 1.03/1.11 1.03/1.11 Problem 1.3: 1.03/1.11 1.03/1.11 SCC Processor: 1.03/1.11 -> Pairs: 1.03/1.11 Empty 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Strongly Connected Components: 1.03/1.11 There is no strongly connected component 1.03/1.11 1.03/1.11 The problem is finite. 1.03/1.11 1.03/1.11 Problem 1.4: 1.03/1.11 1.03/1.11 Subterm Processor: 1.03/1.11 -> Pairs: 1.03/1.11 ISNELIST(ok(X:S)) -> ISNELIST(X:S) 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Projection: 1.03/1.11 pi(ISNELIST) = 1 1.03/1.11 1.03/1.11 Problem 1.4: 1.03/1.11 1.03/1.11 SCC Processor: 1.03/1.11 -> Pairs: 1.03/1.11 Empty 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Strongly Connected Components: 1.03/1.11 There is no strongly connected component 1.03/1.11 1.03/1.11 The problem is finite. 1.03/1.11 1.03/1.11 Problem 1.5: 1.03/1.11 1.03/1.11 Subterm Processor: 1.03/1.11 -> Pairs: 1.03/1.11 ISLIST(ok(X:S)) -> ISLIST(X:S) 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Projection: 1.03/1.11 pi(ISLIST) = 1 1.03/1.11 1.03/1.11 Problem 1.5: 1.03/1.11 1.03/1.11 SCC Processor: 1.03/1.11 -> Pairs: 1.03/1.11 Empty 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Strongly Connected Components: 1.03/1.11 There is no strongly connected component 1.03/1.11 1.03/1.11 The problem is finite. 1.03/1.11 1.03/1.11 Problem 1.6: 1.03/1.11 1.03/1.11 Subterm Processor: 1.03/1.11 -> Pairs: 1.03/1.11 __#(mark(X1:S),X2:S) -> __#(X1:S,X2:S) 1.03/1.11 __#(ok(X1:S),ok(X2:S)) -> __#(X1:S,X2:S) 1.03/1.11 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Projection: 1.03/1.11 pi(__#) = 1 1.03/1.11 1.03/1.11 Problem 1.6: 1.03/1.11 1.03/1.11 SCC Processor: 1.03/1.11 -> Pairs: 1.03/1.11 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.03/1.11 -> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.03/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.03/1.11 active(U52(tt)) -> mark(tt) 1.03/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.03/1.11 active(U61(tt)) -> mark(tt) 1.03/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.03/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.03/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.03/1.11 active(U72(tt)) -> mark(tt) 1.03/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.03/1.11 active(U81(tt)) -> mark(tt) 1.03/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.03/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.03/1.11 active(__(nil,X:S)) -> mark(X:S) 1.03/1.11 active(__(X:S,nil)) -> mark(X:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.03/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.03/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.03/1.11 active(isList(nil)) -> mark(tt) 1.03/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.03/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.03/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.03/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.03/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.03/1.11 active(isPal(nil)) -> mark(tt) 1.03/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.03/1.11 active(isQid(a)) -> mark(tt) 1.03/1.11 active(isQid(e)) -> mark(tt) 1.03/1.11 active(isQid(i)) -> mark(tt) 1.03/1.11 active(isQid(o)) -> mark(tt) 1.03/1.11 active(isQid(u)) -> mark(tt) 1.03/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.03/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.03/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.03/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.03/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.03/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.03/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.03/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.03/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.03/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.03/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.03/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.03/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.03/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.03/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.03/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.03/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.03/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.03/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.03/1.11 proper(a) -> ok(a) 1.03/1.11 proper(e) -> ok(e) 1.03/1.11 proper(i) -> ok(i) 1.03/1.11 proper(nil) -> ok(nil) 1.03/1.11 proper(o) -> ok(o) 1.03/1.11 proper(tt) -> ok(tt) 1.03/1.11 proper(u) -> ok(u) 1.03/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.03/1.11 top(ok(X:S)) -> top(active(X:S)) 1.03/1.11 ->Strongly Connected Components: 1.03/1.11 ->->Cycle: 1.03/1.11 ->->-> Pairs: 1.03/1.11 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.03/1.11 ->->-> Rules: 1.03/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.03/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.03/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.03/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.03/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.03/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.03/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.03/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.03/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.03/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.03/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.03/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.03/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.03/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.03/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.03/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.03/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.03/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.03/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.03/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.03/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.03/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.03/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.03/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.03/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.03/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.03/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.03/1.11 active(U11(tt)) -> mark(tt) 1.03/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.03/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.03/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.03/1.11 active(U22(tt)) -> mark(tt) 1.03/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.03/1.11 active(U31(tt)) -> mark(tt) 1.03/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.03/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.03/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.03/1.11 active(U42(tt)) -> mark(tt) 1.03/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.03/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 1.05/1.11 Problem 1.6: 1.05/1.11 1.05/1.11 Subterm Processor: 1.05/1.11 -> Pairs: 1.05/1.11 __#(X1:S,mark(X2:S)) -> __#(X1:S,X2:S) 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Projection: 1.05/1.11 pi(__#) = 2 1.05/1.11 1.05/1.11 Problem 1.6: 1.05/1.11 1.05/1.11 SCC Processor: 1.05/1.11 -> Pairs: 1.05/1.11 Empty 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Strongly Connected Components: 1.05/1.11 There is no strongly connected component 1.05/1.11 1.05/1.11 The problem is finite. 1.05/1.11 1.05/1.11 Problem 1.7: 1.05/1.11 1.05/1.11 Subterm Processor: 1.05/1.11 -> Pairs: 1.05/1.11 U81#(mark(X:S)) -> U81#(X:S) 1.05/1.11 U81#(ok(X:S)) -> U81#(X:S) 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Projection: 1.05/1.11 pi(U81#) = 1 1.05/1.11 1.05/1.11 Problem 1.7: 1.05/1.11 1.05/1.11 SCC Processor: 1.05/1.11 -> Pairs: 1.05/1.11 Empty 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Strongly Connected Components: 1.05/1.11 There is no strongly connected component 1.05/1.11 1.05/1.11 The problem is finite. 1.05/1.11 1.05/1.11 Problem 1.8: 1.05/1.11 1.05/1.11 Subterm Processor: 1.05/1.11 -> Pairs: 1.05/1.11 U72#(mark(X:S)) -> U72#(X:S) 1.05/1.11 U72#(ok(X:S)) -> U72#(X:S) 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Projection: 1.05/1.11 pi(U72#) = 1 1.05/1.11 1.05/1.11 Problem 1.8: 1.05/1.11 1.05/1.11 SCC Processor: 1.05/1.11 -> Pairs: 1.05/1.11 Empty 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Strongly Connected Components: 1.05/1.11 There is no strongly connected component 1.05/1.11 1.05/1.11 The problem is finite. 1.05/1.11 1.05/1.11 Problem 1.9: 1.05/1.11 1.05/1.11 Subterm Processor: 1.05/1.11 -> Pairs: 1.05/1.11 U71#(mark(X1:S),X2:S) -> U71#(X1:S,X2:S) 1.05/1.11 U71#(ok(X1:S),ok(X2:S)) -> U71#(X1:S,X2:S) 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.11 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.11 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.11 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.11 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.11 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.11 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.11 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.11 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.11 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.11 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.11 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.11 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.11 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.11 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.11 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.11 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.11 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.11 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.11 proper(a) -> ok(a) 1.05/1.11 proper(e) -> ok(e) 1.05/1.11 proper(i) -> ok(i) 1.05/1.11 proper(nil) -> ok(nil) 1.05/1.11 proper(o) -> ok(o) 1.05/1.11 proper(tt) -> ok(tt) 1.05/1.11 proper(u) -> ok(u) 1.05/1.11 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.11 top(ok(X:S)) -> top(active(X:S)) 1.05/1.11 ->Projection: 1.05/1.11 pi(U71#) = 1 1.05/1.11 1.05/1.11 Problem 1.9: 1.05/1.11 1.05/1.11 SCC Processor: 1.05/1.11 -> Pairs: 1.05/1.11 Empty 1.05/1.11 -> Rules: 1.05/1.11 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.11 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.11 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.11 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.11 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.11 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.11 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.11 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.11 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.11 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.11 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.11 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.11 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.11 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.11 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.11 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.11 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.11 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.11 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.11 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.11 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.11 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.11 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.11 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.11 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.11 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.11 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.11 active(U11(tt)) -> mark(tt) 1.05/1.11 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.11 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.11 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.11 active(U22(tt)) -> mark(tt) 1.05/1.11 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.11 active(U31(tt)) -> mark(tt) 1.05/1.11 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.11 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.11 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.11 active(U42(tt)) -> mark(tt) 1.05/1.11 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.11 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.11 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.11 active(U52(tt)) -> mark(tt) 1.05/1.11 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.11 active(U61(tt)) -> mark(tt) 1.05/1.11 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.11 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.11 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.11 active(U72(tt)) -> mark(tt) 1.05/1.11 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.11 active(U81(tt)) -> mark(tt) 1.05/1.11 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.11 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.11 active(__(nil,X:S)) -> mark(X:S) 1.05/1.11 active(__(X:S,nil)) -> mark(X:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.11 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.11 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.11 active(isList(nil)) -> mark(tt) 1.05/1.11 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.11 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.11 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.11 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.11 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.11 active(isPal(nil)) -> mark(tt) 1.05/1.11 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.11 active(isQid(a)) -> mark(tt) 1.05/1.11 active(isQid(e)) -> mark(tt) 1.05/1.11 active(isQid(i)) -> mark(tt) 1.05/1.11 active(isQid(o)) -> mark(tt) 1.05/1.11 active(isQid(u)) -> mark(tt) 1.05/1.11 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.10: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U61#(mark(X:S)) -> U61#(X:S) 1.05/1.12 U61#(ok(X:S)) -> U61#(X:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U61#) = 1 1.05/1.12 1.05/1.12 Problem 1.10: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.11: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U52#(mark(X:S)) -> U52#(X:S) 1.05/1.12 U52#(ok(X:S)) -> U52#(X:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U52#) = 1 1.05/1.12 1.05/1.12 Problem 1.11: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.12: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U51#(mark(X1:S),X2:S) -> U51#(X1:S,X2:S) 1.05/1.12 U51#(ok(X1:S),ok(X2:S)) -> U51#(X1:S,X2:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U51#) = 1 1.05/1.12 1.05/1.12 Problem 1.12: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.13: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U42#(mark(X:S)) -> U42#(X:S) 1.05/1.12 U42#(ok(X:S)) -> U42#(X:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U42#) = 1 1.05/1.12 1.05/1.12 Problem 1.13: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.14: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U41#(mark(X1:S),X2:S) -> U41#(X1:S,X2:S) 1.05/1.12 U41#(ok(X1:S),ok(X2:S)) -> U41#(X1:S,X2:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U41#) = 1 1.05/1.12 1.05/1.12 Problem 1.14: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.15: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U31#(mark(X:S)) -> U31#(X:S) 1.05/1.12 U31#(ok(X:S)) -> U31#(X:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U31#) = 1 1.05/1.12 1.05/1.12 Problem 1.15: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.16: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U22#(mark(X:S)) -> U22#(X:S) 1.05/1.12 U22#(ok(X:S)) -> U22#(X:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U22#) = 1 1.05/1.12 1.05/1.12 Problem 1.16: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.17: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U21#(mark(X1:S),X2:S) -> U21#(X1:S,X2:S) 1.05/1.12 U21#(ok(X1:S),ok(X2:S)) -> U21#(X1:S,X2:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U21#) = 1 1.05/1.12 1.05/1.12 Problem 1.17: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.18: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 U11#(mark(X:S)) -> U11#(X:S) 1.05/1.12 U11#(ok(X:S)) -> U11#(X:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Projection: 1.05/1.12 pi(U11#) = 1 1.05/1.12 1.05/1.12 Problem 1.18: 1.05/1.12 1.05/1.12 SCC Processor: 1.05/1.12 -> Pairs: 1.05/1.12 Empty 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.12 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.12 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.12 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.12 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.12 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.12 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.12 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.12 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.12 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.12 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.12 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.12 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.12 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.12 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.12 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.12 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.12 active(U11(tt)) -> mark(tt) 1.05/1.12 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.12 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.12 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.12 active(U22(tt)) -> mark(tt) 1.05/1.12 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.12 active(U31(tt)) -> mark(tt) 1.05/1.12 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.12 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.12 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.12 active(U42(tt)) -> mark(tt) 1.05/1.12 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.12 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.12 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.12 active(U52(tt)) -> mark(tt) 1.05/1.12 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.12 active(U61(tt)) -> mark(tt) 1.05/1.12 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.12 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.12 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.12 active(U72(tt)) -> mark(tt) 1.05/1.12 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.12 active(U81(tt)) -> mark(tt) 1.05/1.12 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.12 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.12 active(__(nil,X:S)) -> mark(X:S) 1.05/1.12 active(__(X:S,nil)) -> mark(X:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.12 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.12 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.12 active(isList(nil)) -> mark(tt) 1.05/1.12 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.12 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.12 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.12 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.12 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.12 active(isPal(nil)) -> mark(tt) 1.05/1.12 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.12 active(isQid(a)) -> mark(tt) 1.05/1.12 active(isQid(e)) -> mark(tt) 1.05/1.12 active(isQid(i)) -> mark(tt) 1.05/1.12 active(isQid(o)) -> mark(tt) 1.05/1.12 active(isQid(u)) -> mark(tt) 1.05/1.12 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.12 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.12 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.12 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.12 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.12 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.12 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.12 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.12 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.12 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.12 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.12 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.12 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.12 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.12 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.12 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.12 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.12 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.12 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.12 proper(a) -> ok(a) 1.05/1.12 proper(e) -> ok(e) 1.05/1.12 proper(i) -> ok(i) 1.05/1.12 proper(nil) -> ok(nil) 1.05/1.12 proper(o) -> ok(o) 1.05/1.12 proper(tt) -> ok(tt) 1.05/1.12 proper(u) -> ok(u) 1.05/1.12 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.12 top(ok(X:S)) -> top(active(X:S)) 1.05/1.12 ->Strongly Connected Components: 1.05/1.12 There is no strongly connected component 1.05/1.12 1.05/1.12 The problem is finite. 1.05/1.12 1.05/1.12 Problem 1.19: 1.05/1.12 1.05/1.12 Subterm Processor: 1.05/1.12 -> Pairs: 1.05/1.12 ACTIVE(U11(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U21(X1:S,X2:S)) -> ACTIVE(X1:S) 1.05/1.12 ACTIVE(U22(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U31(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U41(X1:S,X2:S)) -> ACTIVE(X1:S) 1.05/1.12 ACTIVE(U42(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U51(X1:S,X2:S)) -> ACTIVE(X1:S) 1.05/1.12 ACTIVE(U52(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U61(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U71(X1:S,X2:S)) -> ACTIVE(X1:S) 1.05/1.12 ACTIVE(U72(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(U81(X:S)) -> ACTIVE(X:S) 1.05/1.12 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X1:S) 1.05/1.12 ACTIVE(__(X1:S,X2:S)) -> ACTIVE(X2:S) 1.05/1.12 -> Rules: 1.05/1.12 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.12 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.12 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.12 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.12 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.12 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.12 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.12 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.12 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.12 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.12 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 ->Projection: 1.05/1.13 pi(ACTIVE) = 1 1.05/1.13 1.05/1.13 Problem 1.19: 1.05/1.13 1.05/1.13 SCC Processor: 1.05/1.13 -> Pairs: 1.05/1.13 Empty 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 ->Strongly Connected Components: 1.05/1.13 There is no strongly connected component 1.05/1.13 1.05/1.13 The problem is finite. 1.05/1.13 1.05/1.13 Problem 1.20: 1.05/1.13 1.05/1.13 Subterm Processor: 1.05/1.13 -> Pairs: 1.05/1.13 PROPER(U11(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U21(X1:S,X2:S)) -> PROPER(X1:S) 1.05/1.13 PROPER(U21(X1:S,X2:S)) -> PROPER(X2:S) 1.05/1.13 PROPER(U22(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U31(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U41(X1:S,X2:S)) -> PROPER(X1:S) 1.05/1.13 PROPER(U41(X1:S,X2:S)) -> PROPER(X2:S) 1.05/1.13 PROPER(U42(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U51(X1:S,X2:S)) -> PROPER(X1:S) 1.05/1.13 PROPER(U51(X1:S,X2:S)) -> PROPER(X2:S) 1.05/1.13 PROPER(U52(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U61(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U71(X1:S,X2:S)) -> PROPER(X1:S) 1.05/1.13 PROPER(U71(X1:S,X2:S)) -> PROPER(X2:S) 1.05/1.13 PROPER(U72(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(U81(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(__(X1:S,X2:S)) -> PROPER(X1:S) 1.05/1.13 PROPER(__(X1:S,X2:S)) -> PROPER(X2:S) 1.05/1.13 PROPER(isList(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(isNeList(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(isNePal(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(isPal(X:S)) -> PROPER(X:S) 1.05/1.13 PROPER(isQid(X:S)) -> PROPER(X:S) 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 ->Projection: 1.05/1.13 pi(PROPER) = 1 1.05/1.13 1.05/1.13 Problem 1.20: 1.05/1.13 1.05/1.13 SCC Processor: 1.05/1.13 -> Pairs: 1.05/1.13 Empty 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 ->Strongly Connected Components: 1.05/1.13 There is no strongly connected component 1.05/1.13 1.05/1.13 The problem is finite. 1.05/1.13 1.05/1.13 Problem 1.21: 1.05/1.13 1.05/1.13 Reduction Pairs Processor: 1.05/1.13 -> Pairs: 1.05/1.13 TOP(mark(X:S)) -> TOP(proper(X:S)) 1.05/1.13 TOP(ok(X:S)) -> TOP(active(X:S)) 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 -> Usable rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 ->Interpretation type: 1.05/1.13 Linear 1.05/1.13 ->Coefficients: 1.05/1.13 All rationals 1.05/1.13 ->Dimension: 1.05/1.13 1 1.05/1.13 ->Bound: 1.05/1.13 2 1.05/1.13 ->Interpretation: 1.05/1.13 1.05/1.13 [U11](X) = X + 1 1.05/1.13 [U21](X1,X2) = X1 + 2.X2 + 2 1.05/1.13 [U22](X) = X + 1/2 1.05/1.13 [U31](X) = 2.X 1.05/1.13 [U41](X1,X2) = 2.X1 + 2.X2 1.05/1.13 [U42](X) = X + 1/2 1.05/1.13 [U51](X1,X2) = 2.X1 + 2.X2 + 2 1.05/1.13 [U52](X) = X + 1/2 1.05/1.13 [U61](X) = 2.X + 1/2 1.05/1.13 [U71](X1,X2) = 2.X1 + 2.X2 + 2 1.05/1.13 [U72](X) = X + 1/2 1.05/1.13 [U81](X) = X + 1/2 1.05/1.13 [__](X1,X2) = 2.X1 + X2 + 2 1.05/1.13 [active](X) = X 1.05/1.13 [isList](X) = 2.X + 2 1.05/1.13 [isNeList](X) = 2.X + 1/2 1.05/1.13 [isNePal](X) = 2.X + 1 1.05/1.13 [isPal](X) = 2.X + 2 1.05/1.13 [isQid](X) = X 1.05/1.13 [proper](X) = X 1.05/1.13 [top](X) = 0 1.05/1.13 [a] = 2 1.05/1.13 [e] = 2 1.05/1.13 [fSNonEmpty] = 0 1.05/1.13 [i] = 2 1.05/1.13 [mark](X) = X + 1/2 1.05/1.13 [nil] = 1/2 1.05/1.13 [o] = 2 1.05/1.13 [ok](X) = X 1.05/1.13 [tt] = 1 1.05/1.13 [u] = 2 1.05/1.13 [U11#](X) = 0 1.05/1.13 [U21#](X1,X2) = 0 1.05/1.13 [U22#](X) = 0 1.05/1.13 [U31#](X) = 0 1.05/1.13 [U41#](X1,X2) = 0 1.05/1.13 [U42#](X) = 0 1.05/1.13 [U51#](X1,X2) = 0 1.05/1.13 [U52#](X) = 0 1.05/1.13 [U61#](X) = 0 1.05/1.13 [U71#](X1,X2) = 0 1.05/1.13 [U72#](X) = 0 1.05/1.13 [U81#](X) = 0 1.05/1.13 [__#](X1,X2) = 0 1.05/1.13 [ACTIVE](X) = 0 1.05/1.13 [ISLIST](X) = 0 1.05/1.13 [ISNELIST](X) = 0 1.05/1.13 [ISNEPAL](X) = 0 1.05/1.13 [ISPAL](X) = 0 1.05/1.13 [ISQID](X) = 0 1.05/1.13 [PROPER](X) = 0 1.05/1.13 [TOP](X) = 2.X 1.05/1.13 1.05/1.13 Problem 1.21: 1.05/1.13 1.05/1.13 SCC Processor: 1.05/1.13 -> Pairs: 1.05/1.13 TOP(ok(X:S)) -> TOP(active(X:S)) 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 ->Strongly Connected Components: 1.05/1.13 ->->Cycle: 1.05/1.13 ->->-> Pairs: 1.05/1.13 TOP(ok(X:S)) -> TOP(active(X:S)) 1.05/1.13 ->->-> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 1.05/1.13 Problem 1.21: 1.05/1.13 1.05/1.13 Reduction Pairs Processor: 1.05/1.13 -> Pairs: 1.05/1.13 TOP(ok(X:S)) -> TOP(active(X:S)) 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 -> Usable rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 ->Interpretation type: 1.05/1.13 Linear 1.05/1.13 ->Coefficients: 1.05/1.13 Natural Numbers 1.05/1.13 ->Dimension: 1.05/1.13 1 1.05/1.13 ->Bound: 1.05/1.13 2 1.05/1.13 ->Interpretation: 1.05/1.13 1.05/1.13 [U11](X) = 2.X + 2 1.05/1.13 [U21](X1,X2) = 2.X2 + 2 1.05/1.13 [U22](X) = 2.X + 2 1.05/1.13 [U31](X) = 2.X + 2 1.05/1.13 [U41](X1,X2) = 2.X2 + 2 1.05/1.13 [U42](X) = 2.X + 1 1.05/1.13 [U51](X1,X2) = 2.X1 + 2 1.05/1.13 [U52](X) = 2.X + 1 1.05/1.13 [U61](X) = 2.X + 2 1.05/1.13 [U71](X1,X2) = X1 + 2.X2 + 1 1.05/1.13 [U72](X) = 2.X + 2 1.05/1.13 [U81](X) = 2.X + 2 1.05/1.13 [__](X1,X2) = 2.X2 + 2 1.05/1.13 [active](X) = 2.X + 1 1.05/1.13 [isList](X) = 2.X + 2 1.05/1.13 [isNeList](X) = 2.X + 2 1.05/1.13 [isNePal](X) = 2.X + 1 1.05/1.13 [isPal](X) = 2.X + 2 1.05/1.13 [isQid](X) = X 1.05/1.13 [proper](X) = 0 1.05/1.13 [top](X) = 0 1.05/1.13 [a] = 1 1.05/1.13 [e] = 2 1.05/1.13 [fSNonEmpty] = 0 1.05/1.13 [i] = 2 1.05/1.13 [mark](X) = 2 1.05/1.13 [nil] = 1 1.05/1.13 [o] = 2 1.05/1.13 [ok](X) = 2.X + 2 1.05/1.13 [tt] = 0 1.05/1.13 [u] = 2 1.05/1.13 [U11#](X) = 0 1.05/1.13 [U21#](X1,X2) = 0 1.05/1.13 [U22#](X) = 0 1.05/1.13 [U31#](X) = 0 1.05/1.13 [U41#](X1,X2) = 0 1.05/1.13 [U42#](X) = 0 1.05/1.13 [U51#](X1,X2) = 0 1.05/1.13 [U52#](X) = 0 1.05/1.13 [U61#](X) = 0 1.05/1.13 [U71#](X1,X2) = 0 1.05/1.13 [U72#](X) = 0 1.05/1.13 [U81#](X) = 0 1.05/1.13 [__#](X1,X2) = 0 1.05/1.13 [ACTIVE](X) = 0 1.05/1.13 [ISLIST](X) = 0 1.05/1.13 [ISNELIST](X) = 0 1.05/1.13 [ISNEPAL](X) = 0 1.05/1.13 [ISPAL](X) = 0 1.05/1.13 [ISQID](X) = 0 1.05/1.13 [PROPER](X) = 0 1.05/1.13 [TOP](X) = 2.X 1.05/1.13 1.05/1.13 Problem 1.21: 1.05/1.13 1.05/1.13 SCC Processor: 1.05/1.13 -> Pairs: 1.05/1.13 Empty 1.05/1.13 -> Rules: 1.05/1.13 U11(mark(X:S)) -> mark(U11(X:S)) 1.05/1.13 U11(ok(X:S)) -> ok(U11(X:S)) 1.05/1.13 U21(mark(X1:S),X2:S) -> mark(U21(X1:S,X2:S)) 1.05/1.13 U21(ok(X1:S),ok(X2:S)) -> ok(U21(X1:S,X2:S)) 1.05/1.13 U22(mark(X:S)) -> mark(U22(X:S)) 1.05/1.13 U22(ok(X:S)) -> ok(U22(X:S)) 1.05/1.13 U31(mark(X:S)) -> mark(U31(X:S)) 1.05/1.13 U31(ok(X:S)) -> ok(U31(X:S)) 1.05/1.13 U41(mark(X1:S),X2:S) -> mark(U41(X1:S,X2:S)) 1.05/1.13 U41(ok(X1:S),ok(X2:S)) -> ok(U41(X1:S,X2:S)) 1.05/1.13 U42(mark(X:S)) -> mark(U42(X:S)) 1.05/1.13 U42(ok(X:S)) -> ok(U42(X:S)) 1.05/1.13 U51(mark(X1:S),X2:S) -> mark(U51(X1:S,X2:S)) 1.05/1.13 U51(ok(X1:S),ok(X2:S)) -> ok(U51(X1:S,X2:S)) 1.05/1.13 U52(mark(X:S)) -> mark(U52(X:S)) 1.05/1.13 U52(ok(X:S)) -> ok(U52(X:S)) 1.05/1.13 U61(mark(X:S)) -> mark(U61(X:S)) 1.05/1.13 U61(ok(X:S)) -> ok(U61(X:S)) 1.05/1.13 U71(mark(X1:S),X2:S) -> mark(U71(X1:S,X2:S)) 1.05/1.13 U71(ok(X1:S),ok(X2:S)) -> ok(U71(X1:S,X2:S)) 1.05/1.13 U72(mark(X:S)) -> mark(U72(X:S)) 1.05/1.13 U72(ok(X:S)) -> ok(U72(X:S)) 1.05/1.13 U81(mark(X:S)) -> mark(U81(X:S)) 1.05/1.13 U81(ok(X:S)) -> ok(U81(X:S)) 1.05/1.13 __(mark(X1:S),X2:S) -> mark(__(X1:S,X2:S)) 1.05/1.13 __(ok(X1:S),ok(X2:S)) -> ok(__(X1:S,X2:S)) 1.05/1.13 __(X1:S,mark(X2:S)) -> mark(__(X1:S,X2:S)) 1.05/1.13 active(U11(tt)) -> mark(tt) 1.05/1.13 active(U11(X:S)) -> U11(active(X:S)) 1.05/1.13 active(U21(tt,V2:S)) -> mark(U22(isList(V2:S))) 1.05/1.13 active(U21(X1:S,X2:S)) -> U21(active(X1:S),X2:S) 1.05/1.13 active(U22(tt)) -> mark(tt) 1.05/1.13 active(U22(X:S)) -> U22(active(X:S)) 1.05/1.13 active(U31(tt)) -> mark(tt) 1.05/1.13 active(U31(X:S)) -> U31(active(X:S)) 1.05/1.13 active(U41(tt,V2:S)) -> mark(U42(isNeList(V2:S))) 1.05/1.13 active(U41(X1:S,X2:S)) -> U41(active(X1:S),X2:S) 1.05/1.13 active(U42(tt)) -> mark(tt) 1.05/1.13 active(U42(X:S)) -> U42(active(X:S)) 1.05/1.13 active(U51(tt,V2:S)) -> mark(U52(isList(V2:S))) 1.05/1.13 active(U51(X1:S,X2:S)) -> U51(active(X1:S),X2:S) 1.05/1.13 active(U52(tt)) -> mark(tt) 1.05/1.13 active(U52(X:S)) -> U52(active(X:S)) 1.05/1.13 active(U61(tt)) -> mark(tt) 1.05/1.13 active(U61(X:S)) -> U61(active(X:S)) 1.05/1.13 active(U71(tt,P:S)) -> mark(U72(isPal(P:S))) 1.05/1.13 active(U71(X1:S,X2:S)) -> U71(active(X1:S),X2:S) 1.05/1.13 active(U72(tt)) -> mark(tt) 1.05/1.13 active(U72(X:S)) -> U72(active(X:S)) 1.05/1.13 active(U81(tt)) -> mark(tt) 1.05/1.13 active(U81(X:S)) -> U81(active(X:S)) 1.05/1.13 active(__(__(X:S,Y:S),Z:S)) -> mark(__(X:S,__(Y:S,Z:S))) 1.05/1.13 active(__(nil,X:S)) -> mark(X:S) 1.05/1.13 active(__(X:S,nil)) -> mark(X:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(active(X1:S),X2:S) 1.05/1.13 active(__(X1:S,X2:S)) -> __(X1:S,active(X2:S)) 1.05/1.13 active(isList(__(V1:S,V2:S))) -> mark(U21(isList(V1:S),V2:S)) 1.05/1.13 active(isList(nil)) -> mark(tt) 1.05/1.13 active(isList(V:S)) -> mark(U11(isNeList(V:S))) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U41(isList(V1:S),V2:S)) 1.05/1.13 active(isNeList(__(V1:S,V2:S))) -> mark(U51(isNeList(V1:S),V2:S)) 1.05/1.13 active(isNeList(V:S)) -> mark(U31(isQid(V:S))) 1.05/1.13 active(isNePal(__(I:S,__(P:S,I:S)))) -> mark(U71(isQid(I:S),P:S)) 1.05/1.13 active(isNePal(V:S)) -> mark(U61(isQid(V:S))) 1.05/1.13 active(isPal(nil)) -> mark(tt) 1.05/1.13 active(isPal(V:S)) -> mark(U81(isNePal(V:S))) 1.05/1.13 active(isQid(a)) -> mark(tt) 1.05/1.13 active(isQid(e)) -> mark(tt) 1.05/1.13 active(isQid(i)) -> mark(tt) 1.05/1.13 active(isQid(o)) -> mark(tt) 1.05/1.13 active(isQid(u)) -> mark(tt) 1.05/1.13 isList(ok(X:S)) -> ok(isList(X:S)) 1.05/1.13 isNeList(ok(X:S)) -> ok(isNeList(X:S)) 1.05/1.13 isNePal(ok(X:S)) -> ok(isNePal(X:S)) 1.05/1.13 isPal(ok(X:S)) -> ok(isPal(X:S)) 1.05/1.13 isQid(ok(X:S)) -> ok(isQid(X:S)) 1.05/1.13 proper(U11(X:S)) -> U11(proper(X:S)) 1.05/1.13 proper(U21(X1:S,X2:S)) -> U21(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U22(X:S)) -> U22(proper(X:S)) 1.05/1.13 proper(U31(X:S)) -> U31(proper(X:S)) 1.05/1.13 proper(U41(X1:S,X2:S)) -> U41(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U42(X:S)) -> U42(proper(X:S)) 1.05/1.13 proper(U51(X1:S,X2:S)) -> U51(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U52(X:S)) -> U52(proper(X:S)) 1.05/1.13 proper(U61(X:S)) -> U61(proper(X:S)) 1.05/1.13 proper(U71(X1:S,X2:S)) -> U71(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(U72(X:S)) -> U72(proper(X:S)) 1.05/1.13 proper(U81(X:S)) -> U81(proper(X:S)) 1.05/1.13 proper(__(X1:S,X2:S)) -> __(proper(X1:S),proper(X2:S)) 1.05/1.13 proper(isList(X:S)) -> isList(proper(X:S)) 1.05/1.13 proper(isNeList(X:S)) -> isNeList(proper(X:S)) 1.05/1.13 proper(isNePal(X:S)) -> isNePal(proper(X:S)) 1.05/1.13 proper(isPal(X:S)) -> isPal(proper(X:S)) 1.05/1.13 proper(isQid(X:S)) -> isQid(proper(X:S)) 1.05/1.13 proper(a) -> ok(a) 1.05/1.13 proper(e) -> ok(e) 1.05/1.13 proper(i) -> ok(i) 1.05/1.13 proper(nil) -> ok(nil) 1.05/1.13 proper(o) -> ok(o) 1.05/1.13 proper(tt) -> ok(tt) 1.05/1.13 proper(u) -> ok(u) 1.05/1.13 top(mark(X:S)) -> top(proper(X:S)) 1.05/1.13 top(ok(X:S)) -> top(active(X:S)) 1.05/1.13 ->Strongly Connected Components: 1.05/1.13 There is no strongly connected component 1.05/1.13 1.05/1.13 The problem is finite. 1.05/1.13 EOF