MAYBE 0.28/0.31 MAYBE 0.28/0.31 0.28/0.31 Problem: 0.28/0.31 active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) 0.28/0.31 active(__(X,nil())) -> mark(X) 0.28/0.31 active(__(nil(),X)) -> mark(X) 0.28/0.31 active(U11(tt(),V)) -> mark(U12(isNeList(V))) 0.28/0.31 active(U12(tt())) -> mark(tt()) 0.28/0.31 active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2)) 0.28/0.31 active(U22(tt(),V2)) -> mark(U23(isList(V2))) 0.28/0.31 active(U23(tt())) -> mark(tt()) 0.28/0.31 active(U31(tt(),V)) -> mark(U32(isQid(V))) 0.28/0.31 active(U32(tt())) -> mark(tt()) 0.28/0.31 active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2)) 0.28/0.31 active(U42(tt(),V2)) -> mark(U43(isNeList(V2))) 0.28/0.31 active(U43(tt())) -> mark(tt()) 0.28/0.31 active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2)) 0.28/0.31 active(U52(tt(),V2)) -> mark(U53(isList(V2))) 0.28/0.31 active(U53(tt())) -> mark(tt()) 0.28/0.31 active(U61(tt(),V)) -> mark(U62(isQid(V))) 0.28/0.31 active(U62(tt())) -> mark(tt()) 0.28/0.31 active(U71(tt(),V)) -> mark(U72(isNePal(V))) 0.28/0.31 active(U72(tt())) -> mark(tt()) 0.28/0.31 active(and(tt(),X)) -> mark(X) 0.28/0.31 active(isList(V)) -> mark(U11(isPalListKind(V),V)) 0.28/0.31 active(isList(nil())) -> mark(tt()) 0.28/0.31 active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2)) 0.28/0.31 active(isNeList(V)) -> mark(U31(isPalListKind(V),V)) 0.28/0.31 active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2)) 0.28/0.31 active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2)) 0.28/0.31 active(isNePal(V)) -> mark(U61(isPalListKind(V),V)) 0.28/0.31 active(isNePal(__(I,__(P,I)))) -> 0.28/0.31 mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P)))) 0.28/0.31 active(isPal(V)) -> mark(U71(isPalListKind(V),V)) 0.28/0.31 active(isPal(nil())) -> mark(tt()) 0.28/0.31 active(isPalListKind(a())) -> mark(tt()) 0.28/0.31 active(isPalListKind(e())) -> mark(tt()) 0.28/0.31 active(isPalListKind(i())) -> mark(tt()) 0.28/0.31 active(isPalListKind(nil())) -> mark(tt()) 0.28/0.31 active(isPalListKind(o())) -> mark(tt()) 0.28/0.31 active(isPalListKind(u())) -> mark(tt()) 0.28/0.31 active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2))) 0.28/0.31 active(isQid(a())) -> mark(tt()) 0.28/0.31 active(isQid(e())) -> mark(tt()) 0.28/0.31 active(isQid(i())) -> mark(tt()) 0.28/0.31 active(isQid(o())) -> mark(tt()) 0.28/0.31 active(isQid(u())) -> mark(tt()) 0.28/0.31 active(__(X1,X2)) -> __(active(X1),X2) 0.28/0.31 active(__(X1,X2)) -> __(X1,active(X2)) 0.28/0.31 active(U11(X1,X2)) -> U11(active(X1),X2) 0.28/0.31 active(U12(X)) -> U12(active(X)) 0.28/0.31 active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3) 0.28/0.31 active(U22(X1,X2)) -> U22(active(X1),X2) 0.28/0.31 active(U23(X)) -> U23(active(X)) 0.28/0.31 active(U31(X1,X2)) -> U31(active(X1),X2) 0.28/0.31 active(U32(X)) -> U32(active(X)) 0.28/0.31 active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3) 0.28/0.31 active(U42(X1,X2)) -> U42(active(X1),X2) 0.28/0.31 active(U43(X)) -> U43(active(X)) 0.28/0.31 active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3) 0.28/0.31 active(U52(X1,X2)) -> U52(active(X1),X2) 0.28/0.31 active(U53(X)) -> U53(active(X)) 0.28/0.31 active(U61(X1,X2)) -> U61(active(X1),X2) 0.28/0.31 active(U62(X)) -> U62(active(X)) 0.28/0.31 active(U71(X1,X2)) -> U71(active(X1),X2) 0.28/0.31 active(U72(X)) -> U72(active(X)) 0.28/0.31 active(and(X1,X2)) -> and(active(X1),X2) 0.28/0.31 __(mark(X1),X2) -> mark(__(X1,X2)) 0.28/0.31 __(X1,mark(X2)) -> mark(__(X1,X2)) 0.28/0.31 U11(mark(X1),X2) -> mark(U11(X1,X2)) 0.28/0.31 U12(mark(X)) -> mark(U12(X)) 0.28/0.31 U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3)) 0.28/0.31 U22(mark(X1),X2) -> mark(U22(X1,X2)) 0.28/0.31 U23(mark(X)) -> mark(U23(X)) 0.28/0.31 U31(mark(X1),X2) -> mark(U31(X1,X2)) 0.28/0.31 U32(mark(X)) -> mark(U32(X)) 0.28/0.31 U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3)) 0.28/0.31 U42(mark(X1),X2) -> mark(U42(X1,X2)) 0.28/0.31 U43(mark(X)) -> mark(U43(X)) 0.28/0.31 U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3)) 0.28/0.31 U52(mark(X1),X2) -> mark(U52(X1,X2)) 0.28/0.31 U53(mark(X)) -> mark(U53(X)) 0.28/0.31 U61(mark(X1),X2) -> mark(U61(X1,X2)) 0.28/0.31 U62(mark(X)) -> mark(U62(X)) 0.28/0.31 U71(mark(X1),X2) -> mark(U71(X1,X2)) 0.28/0.31 U72(mark(X)) -> mark(U72(X)) 0.28/0.31 and(mark(X1),X2) -> mark(and(X1,X2)) 0.28/0.31 proper(__(X1,X2)) -> __(proper(X1),proper(X2)) 0.28/0.31 proper(nil()) -> ok(nil()) 0.28/0.31 proper(U11(X1,X2)) -> U11(proper(X1),proper(X2)) 0.28/0.31 proper(tt()) -> ok(tt()) 0.28/0.31 proper(U12(X)) -> U12(proper(X)) 0.28/0.31 proper(isNeList(X)) -> isNeList(proper(X)) 0.28/0.31 proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3)) 0.28/0.31 proper(U22(X1,X2)) -> U22(proper(X1),proper(X2)) 0.28/0.31 proper(isList(X)) -> isList(proper(X)) 0.28/0.31 proper(U23(X)) -> U23(proper(X)) 0.28/0.31 proper(U31(X1,X2)) -> U31(proper(X1),proper(X2)) 0.28/0.31 proper(U32(X)) -> U32(proper(X)) 0.28/0.31 proper(isQid(X)) -> isQid(proper(X)) 0.28/0.31 proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3)) 0.28/0.31 proper(U42(X1,X2)) -> U42(proper(X1),proper(X2)) 0.28/0.31 proper(U43(X)) -> U43(proper(X)) 0.28/0.31 proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3)) 0.28/0.31 proper(U52(X1,X2)) -> U52(proper(X1),proper(X2)) 0.28/0.31 proper(U53(X)) -> U53(proper(X)) 0.28/0.31 proper(U61(X1,X2)) -> U61(proper(X1),proper(X2)) 0.28/0.31 proper(U62(X)) -> U62(proper(X)) 0.28/0.31 proper(U71(X1,X2)) -> U71(proper(X1),proper(X2)) 0.28/0.31 proper(U72(X)) -> U72(proper(X)) 0.28/0.31 proper(isNePal(X)) -> isNePal(proper(X)) 0.28/0.31 proper(and(X1,X2)) -> and(proper(X1),proper(X2)) 0.28/0.31 proper(isPalListKind(X)) -> isPalListKind(proper(X)) 0.28/0.31 proper(isPal(X)) -> isPal(proper(X)) 0.28/0.31 proper(a()) -> ok(a()) 0.28/0.31 proper(e()) -> ok(e()) 0.28/0.31 proper(i()) -> ok(i()) 0.28/0.31 proper(o()) -> ok(o()) 0.28/0.31 proper(u()) -> ok(u()) 0.28/0.31 __(ok(X1),ok(X2)) -> ok(__(X1,X2)) 0.28/0.31 U11(ok(X1),ok(X2)) -> ok(U11(X1,X2)) 0.28/0.31 U12(ok(X)) -> ok(U12(X)) 0.28/0.31 isNeList(ok(X)) -> ok(isNeList(X)) 0.28/0.31 U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3)) 0.28/0.31 U22(ok(X1),ok(X2)) -> ok(U22(X1,X2)) 0.28/0.31 isList(ok(X)) -> ok(isList(X)) 0.28/0.31 U23(ok(X)) -> ok(U23(X)) 0.28/0.31 U31(ok(X1),ok(X2)) -> ok(U31(X1,X2)) 0.28/0.31 U32(ok(X)) -> ok(U32(X)) 0.28/0.31 isQid(ok(X)) -> ok(isQid(X)) 0.28/0.31 U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3)) 0.28/0.31 U42(ok(X1),ok(X2)) -> ok(U42(X1,X2)) 0.28/0.31 U43(ok(X)) -> ok(U43(X)) 0.28/0.31 U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3)) 0.28/0.31 U52(ok(X1),ok(X2)) -> ok(U52(X1,X2)) 0.28/0.31 U53(ok(X)) -> ok(U53(X)) 0.28/0.31 U61(ok(X1),ok(X2)) -> ok(U61(X1,X2)) 0.28/0.31 U62(ok(X)) -> ok(U62(X)) 0.28/0.31 U71(ok(X1),ok(X2)) -> ok(U71(X1,X2)) 0.28/0.31 U72(ok(X)) -> ok(U72(X)) 0.28/0.31 isNePal(ok(X)) -> ok(isNePal(X)) 0.28/0.31 and(ok(X1),ok(X2)) -> ok(and(X1,X2)) 0.28/0.31 isPalListKind(ok(X)) -> ok(isPalListKind(X)) 0.28/0.31 isPal(ok(X)) -> ok(isPal(X)) 0.28/0.31 top(mark(X)) -> top(proper(X)) 0.28/0.31 top(ok(X)) -> top(active(X)) 0.28/0.31 0.28/0.31 Proof: 0.28/0.31 Open 0.28/0.32 EOF