MAYBE 388.35/98.30 MAYBE 388.35/98.30 388.35/98.30 Problem: 388.35/98.30 active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z))) 388.35/98.30 active(__(X,nil())) -> mark(X) 388.35/98.30 active(__(nil(),X)) -> mark(X) 388.35/98.30 active(U11(tt())) -> mark(tt()) 388.35/98.30 active(U21(tt(),V2)) -> mark(U22(isList(V2))) 388.35/98.30 active(U22(tt())) -> mark(tt()) 388.35/98.30 active(U31(tt())) -> mark(tt()) 388.35/98.30 active(U41(tt(),V2)) -> mark(U42(isNeList(V2))) 388.35/98.30 active(U42(tt())) -> mark(tt()) 388.35/98.30 active(U51(tt(),V2)) -> mark(U52(isList(V2))) 388.35/98.30 active(U52(tt())) -> mark(tt()) 388.35/98.30 active(U61(tt())) -> mark(tt()) 388.35/98.30 active(U71(tt(),P)) -> mark(U72(isPal(P))) 388.35/98.30 active(U72(tt())) -> mark(tt()) 388.35/98.30 active(U81(tt())) -> mark(tt()) 388.35/98.30 active(isList(V)) -> mark(U11(isNeList(V))) 388.35/98.30 active(isList(nil())) -> mark(tt()) 388.35/98.30 active(isList(__(V1,V2))) -> mark(U21(isList(V1),V2)) 388.35/98.30 active(isNeList(V)) -> mark(U31(isQid(V))) 388.35/98.30 active(isNeList(__(V1,V2))) -> mark(U41(isList(V1),V2)) 388.35/98.30 active(isNeList(__(V1,V2))) -> mark(U51(isNeList(V1),V2)) 388.35/98.30 active(isNePal(V)) -> mark(U61(isQid(V))) 388.35/98.30 active(isNePal(__(I,__(P,I)))) -> mark(U71(isQid(I),P)) 388.35/98.30 active(isPal(V)) -> mark(U81(isNePal(V))) 388.35/98.30 active(isPal(nil())) -> mark(tt()) 388.35/98.31 active(isQid(a())) -> mark(tt()) 388.35/98.31 active(isQid(e())) -> mark(tt()) 388.35/98.31 active(isQid(i())) -> mark(tt()) 388.35/98.31 active(isQid(o())) -> mark(tt()) 388.35/98.31 active(isQid(u())) -> mark(tt()) 388.35/98.31 active(__(X1,X2)) -> __(active(X1),X2) 388.35/98.31 active(__(X1,X2)) -> __(X1,active(X2)) 388.35/98.31 active(U11(X)) -> U11(active(X)) 388.35/98.31 active(U21(X1,X2)) -> U21(active(X1),X2) 388.35/98.31 active(U22(X)) -> U22(active(X)) 388.35/98.31 active(U31(X)) -> U31(active(X)) 388.35/98.31 active(U41(X1,X2)) -> U41(active(X1),X2) 388.35/98.31 active(U42(X)) -> U42(active(X)) 388.35/98.31 active(U51(X1,X2)) -> U51(active(X1),X2) 388.35/98.31 active(U52(X)) -> U52(active(X)) 388.35/98.31 active(U61(X)) -> U61(active(X)) 388.35/98.31 active(U71(X1,X2)) -> U71(active(X1),X2) 388.35/98.31 active(U72(X)) -> U72(active(X)) 388.35/98.31 active(U81(X)) -> U81(active(X)) 388.35/98.31 __(mark(X1),X2) -> mark(__(X1,X2)) 388.35/98.31 __(X1,mark(X2)) -> mark(__(X1,X2)) 388.35/98.31 U11(mark(X)) -> mark(U11(X)) 388.35/98.31 U21(mark(X1),X2) -> mark(U21(X1,X2)) 388.35/98.31 U22(mark(X)) -> mark(U22(X)) 388.35/98.31 U31(mark(X)) -> mark(U31(X)) 388.35/98.31 U41(mark(X1),X2) -> mark(U41(X1,X2)) 388.35/98.31 U42(mark(X)) -> mark(U42(X)) 388.35/98.31 U51(mark(X1),X2) -> mark(U51(X1,X2)) 388.35/98.31 U52(mark(X)) -> mark(U52(X)) 388.35/98.31 U61(mark(X)) -> mark(U61(X)) 388.35/98.31 U71(mark(X1),X2) -> mark(U71(X1,X2)) 388.35/98.31 U72(mark(X)) -> mark(U72(X)) 388.35/98.31 U81(mark(X)) -> mark(U81(X)) 388.35/98.31 proper(__(X1,X2)) -> __(proper(X1),proper(X2)) 388.35/98.31 proper(nil()) -> ok(nil()) 388.35/98.31 proper(U11(X)) -> U11(proper(X)) 388.35/98.31 proper(tt()) -> ok(tt()) 388.35/98.31 proper(U21(X1,X2)) -> U21(proper(X1),proper(X2)) 388.35/98.31 proper(U22(X)) -> U22(proper(X)) 388.35/98.31 proper(isList(X)) -> isList(proper(X)) 388.35/98.31 proper(U31(X)) -> U31(proper(X)) 388.35/98.31 proper(U41(X1,X2)) -> U41(proper(X1),proper(X2)) 388.35/98.31 proper(U42(X)) -> U42(proper(X)) 388.35/98.31 proper(isNeList(X)) -> isNeList(proper(X)) 388.35/98.31 proper(U51(X1,X2)) -> U51(proper(X1),proper(X2)) 388.35/98.31 proper(U52(X)) -> U52(proper(X)) 388.35/98.31 proper(U61(X)) -> U61(proper(X)) 388.35/98.31 proper(U71(X1,X2)) -> U71(proper(X1),proper(X2)) 388.35/98.31 proper(U72(X)) -> U72(proper(X)) 388.35/98.31 proper(isPal(X)) -> isPal(proper(X)) 388.35/98.31 proper(U81(X)) -> U81(proper(X)) 388.35/98.31 proper(isQid(X)) -> isQid(proper(X)) 388.35/98.31 proper(isNePal(X)) -> isNePal(proper(X)) 388.35/98.31 proper(a()) -> ok(a()) 388.35/98.31 proper(e()) -> ok(e()) 388.35/98.31 proper(i()) -> ok(i()) 388.35/98.31 proper(o()) -> ok(o()) 388.35/98.31 proper(u()) -> ok(u()) 388.35/98.31 __(ok(X1),ok(X2)) -> ok(__(X1,X2)) 388.35/98.31 U11(ok(X)) -> ok(U11(X)) 388.35/98.31 U21(ok(X1),ok(X2)) -> ok(U21(X1,X2)) 388.35/98.31 U22(ok(X)) -> ok(U22(X)) 388.35/98.31 isList(ok(X)) -> ok(isList(X)) 388.35/98.31 U31(ok(X)) -> ok(U31(X)) 388.35/98.31 U41(ok(X1),ok(X2)) -> ok(U41(X1,X2)) 388.35/98.31 U42(ok(X)) -> ok(U42(X)) 388.35/98.31 isNeList(ok(X)) -> ok(isNeList(X)) 388.35/98.31 U51(ok(X1),ok(X2)) -> ok(U51(X1,X2)) 388.35/98.31 U52(ok(X)) -> ok(U52(X)) 388.35/98.31 U61(ok(X)) -> ok(U61(X)) 388.35/98.31 U71(ok(X1),ok(X2)) -> ok(U71(X1,X2)) 388.35/98.31 U72(ok(X)) -> ok(U72(X)) 388.35/98.31 isPal(ok(X)) -> ok(isPal(X)) 388.35/98.31 U81(ok(X)) -> ok(U81(X)) 388.35/98.31 isQid(ok(X)) -> ok(isQid(X)) 388.35/98.31 isNePal(ok(X)) -> ok(isNePal(X)) 388.35/98.31 top(mark(X)) -> top(proper(X)) 388.35/98.31 top(ok(X)) -> top(active(X)) 388.35/98.31 388.35/98.31 Proof: 388.35/98.31 Open 388.35/98.31 EOF