/export/starexec/sandbox/solver/bin/starexec_run_ttt2-1.17+nonreach /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES Problem: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Proof: DP Processor: DPs: a____#(__(X,Y),Z) -> mark#(Z) a____#(__(X,Y),Z) -> mark#(Y) a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) -> mark#(X) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) a____#(X,nil()) -> mark#(X) a____#(nil(),X) -> mark#(X) a__U11#(tt(),V) -> a__isNeList#(V) a__U11#(tt(),V) -> a__U12#(a__isNeList(V)) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U22#(tt(),V2) -> a__U23#(a__isList(V2)) a__U31#(tt(),V) -> a__isQid#(V) a__U31#(tt(),V) -> a__U32#(a__isQid(V)) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__U42#(tt(),V2) -> a__U43#(a__isNeList(V2)) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) a__U52#(tt(),V2) -> a__U53#(a__isList(V2)) a__U61#(tt(),V) -> a__isQid#(V) a__U61#(tt(),V) -> a__U62#(a__isQid(V)) a__U71#(tt(),V) -> a__isNePal#(V) a__U71#(tt(),V) -> a__U72#(a__isNePal(V)) a__and#(tt(),X) -> mark#(X) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(V) -> a__U31#(a__isPalListKind(V),V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(V) -> a__U61#(a__isPalListKind(V),V) a__isNePal#(__(I,__(P,I))) -> a__isQid#(I) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal#(V) -> a__isPalListKind#(V) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) mark#(__(X1,X2)) -> mark#(X2) mark#(__(X1,X2)) -> mark#(X1) mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) mark#(U12(X)) -> mark#(X) mark#(U12(X)) -> a__U12#(mark(X)) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U23(X)) -> a__U23#(mark(X)) mark#(U31(X1,X2)) -> mark#(X1) mark#(U31(X1,X2)) -> a__U31#(mark(X1),X2) mark#(U32(X)) -> mark#(X) mark#(U32(X)) -> a__U32#(mark(X)) mark#(isQid(X)) -> a__isQid#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U43(X)) -> a__U43#(mark(X)) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U53(X)) -> a__U53#(mark(X)) mark#(U61(X1,X2)) -> mark#(X1) mark#(U61(X1,X2)) -> a__U61#(mark(X1),X2) mark#(U62(X)) -> mark#(X) mark#(U62(X)) -> a__U62#(mark(X)) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) mark#(U72(X)) -> mark#(X) mark#(U72(X)) -> a__U72#(mark(X)) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) TDG Processor: DPs: a____#(__(X,Y),Z) -> mark#(Z) a____#(__(X,Y),Z) -> mark#(Y) a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) -> mark#(X) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) a____#(X,nil()) -> mark#(X) a____#(nil(),X) -> mark#(X) a__U11#(tt(),V) -> a__isNeList#(V) a__U11#(tt(),V) -> a__U12#(a__isNeList(V)) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U22#(tt(),V2) -> a__U23#(a__isList(V2)) a__U31#(tt(),V) -> a__isQid#(V) a__U31#(tt(),V) -> a__U32#(a__isQid(V)) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__U42#(tt(),V2) -> a__U43#(a__isNeList(V2)) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) a__U52#(tt(),V2) -> a__U53#(a__isList(V2)) a__U61#(tt(),V) -> a__isQid#(V) a__U61#(tt(),V) -> a__U62#(a__isQid(V)) a__U71#(tt(),V) -> a__isNePal#(V) a__U71#(tt(),V) -> a__U72#(a__isNePal(V)) a__and#(tt(),X) -> mark#(X) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(V) -> a__U31#(a__isPalListKind(V),V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(V) -> a__U61#(a__isPalListKind(V),V) a__isNePal#(__(I,__(P,I))) -> a__isQid#(I) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal#(V) -> a__isPalListKind#(V) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) mark#(__(X1,X2)) -> mark#(X2) mark#(__(X1,X2)) -> mark#(X1) mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) mark#(U12(X)) -> mark#(X) mark#(U12(X)) -> a__U12#(mark(X)) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U23(X)) -> a__U23#(mark(X)) mark#(U31(X1,X2)) -> mark#(X1) mark#(U31(X1,X2)) -> a__U31#(mark(X1),X2) mark#(U32(X)) -> mark#(X) mark#(U32(X)) -> a__U32#(mark(X)) mark#(isQid(X)) -> a__isQid#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U43(X)) -> a__U43#(mark(X)) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U53(X)) -> a__U53#(mark(X)) mark#(U61(X1,X2)) -> mark#(X1) mark#(U61(X1,X2)) -> a__U61#(mark(X1),X2) mark#(U62(X)) -> mark#(X) mark#(U62(X)) -> a__U62#(mark(X)) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) mark#(U72(X)) -> mark#(X) mark#(U72(X)) -> a__U72#(mark(X)) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) graph: ... SCC Processor: #sccs: 1 #rules: 71 #arcs: 1314/8649 DPs: a__isPal#(V) -> a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) -> mark#(X) mark#(__(X1,X2)) -> mark#(X2) mark#(__(X1,X2)) -> mark#(X1) mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) a____#(__(X,Y),Z) -> mark#(Z) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) mark#(U12(X)) -> mark#(X) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U31(X1,X2)) -> mark#(X1) mark#(U32(X)) -> mark#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U61(X1,X2)) -> mark#(X1) mark#(U62(X)) -> mark#(X) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) a__U71#(tt(),V) -> a__isNePal#(V) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) -> mark#(X) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) -> mark#(Y) a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) -> mark#(X) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) a____#(X,nil()) -> mark#(X) a____#(nil(),X) -> mark#(X) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Matrix Interpretation Processor: dim=1 usable rules: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) interpretation: [a__isPal#](x0) = 0, [a__isPalListKind#](x0) = 0, [a__and#](x0, x1) = x1, [a__isNePal#](x0) = 0, [a__U71#](x0, x1) = 0, [a__U52#](x0, x1) = 0, [a__U51#](x0, x1, x2) = 0, [a__U42#](x0, x1) = 0, [a__U41#](x0, x1, x2) = 0, [a__U22#](x0, x1) = 0, [a__isList#](x0) = 0, [a__U21#](x0, x1, x2) = 0, [a__isNeList#](x0) = 0, [a__U11#](x0, x1) = 0, [mark#](x0) = 1/2x0, [a____#](x0, x1) = 1/2x0 + 1/2x1, [isNePal](x0) = 0, [U72](x0) = 2x0, [U71](x0, x1) = x0, [U62](x0) = 2x0, [U61](x0, x1) = x0, [U53](x0) = x0, [U52](x0, x1) = x0, [U51](x0, x1, x2) = x0, [U43](x0) = x0, [U42](x0, x1) = 2x0, [U41](x0, x1, x2) = x0, [isQid](x0) = 0, [U32](x0) = x0, [U31](x0, x1) = 2x0, [U23](x0) = x0, [isList](x0) = 0, [U22](x0, x1) = x0, [U21](x0, x1, x2) = 2x0, [isNeList](x0) = 0, [U12](x0) = x0, [U11](x0, x1) = x0, [u] = 0, [o] = 2, [i] = 0, [e] = 2, [a] = 1, [a__isPal](x0) = 0, [and](x0, x1) = 2x0 + 2x1, [isPal](x0) = 0, [isPalListKind](x0) = 0, [a__isPalListKind](x0) = 0, [a__and](x0, x1) = 2x0 + 2x1, [a__U72](x0) = 2x0, [a__isNePal](x0) = 0, [a__U71](x0, x1) = x0, [a__U62](x0) = 2x0, [a__U61](x0, x1) = x0, [a__U53](x0) = x0, [a__U52](x0, x1) = x0, [a__U51](x0, x1, x2) = x0, [a__U43](x0) = x0, [a__U42](x0, x1) = 2x0, [a__U41](x0, x1, x2) = x0, [a__U32](x0) = x0, [a__isQid](x0) = 0, [a__U31](x0, x1) = 2x0, [a__U23](x0) = x0, [a__U22](x0, x1) = x0, [a__isList](x0) = 0, [a__U21](x0, x1, x2) = 2x0, [a__U12](x0) = x0, [a__isNeList](x0) = 0, [a__U11](x0, x1) = x0, [tt] = 0, [nil] = 1, [mark](x0) = x0, [a____](x0, x1) = x0 + x1, [__](x0, x1) = x0 + x1 orientation: a__isPal#(V) = 0 >= 0 = a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) = 0 >= 0 = a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) = 0 >= 0 = a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) = X >= 1/2X = mark#(X) mark#(__(X1,X2)) = 1/2X1 + 1/2X2 >= 1/2X2 = mark#(X2) mark#(__(X1,X2)) = 1/2X1 + 1/2X2 >= 1/2X1 = mark#(X1) mark#(__(X1,X2)) = 1/2X1 + 1/2X2 >= 1/2X1 + 1/2X2 = a____#(mark(X1),mark(X2)) a____#(__(X,Y),Z) = 1/2X + 1/2Y + 1/2Z >= 1/2Z = mark#(Z) mark#(U11(X1,X2)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U11(X1,X2)) = 1/2X1 >= 0 = a__U11#(mark(X1),X2) a__U11#(tt(),V) = 0 >= 0 = a__isNeList#(V) a__isNeList#(V) = 0 >= 0 = a__isPalListKind#(V) a__isNeList#(__(V1,V2)) = 0 >= 0 = a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) = 0 >= 0 = a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) = 0 >= 0 = a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) = 0 >= 0 = a__isList#(V1) a__isList#(V) = 0 >= 0 = a__isPalListKind#(V) a__isList#(V) = 0 >= 0 = a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) = 0 >= 0 = a__isPalListKind#(V1) a__isList#(__(V1,V2)) = 0 >= 0 = a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) = 0 >= 0 = a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) = 0 >= 0 = a__isList#(V1) a__U21#(tt(),V1,V2) = 0 >= 0 = a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) = 0 >= 0 = a__isList#(V2) a__U41#(tt(),V1,V2) = 0 >= 0 = a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) = 0 >= 0 = a__isNeList#(V2) a__isNeList#(__(V1,V2)) = 0 >= 0 = a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) = 0 >= 0 = a__isNeList#(V1) a__U51#(tt(),V1,V2) = 0 >= 0 = a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) = 0 >= 0 = a__isList#(V2) mark#(U12(X)) = 1/2X >= 1/2X = mark#(X) mark#(isNeList(X)) = 0 >= 0 = a__isNeList#(X) mark#(U21(X1,X2,X3)) = X1 >= 1/2X1 = mark#(X1) mark#(U21(X1,X2,X3)) = X1 >= 0 = a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U22(X1,X2)) = 1/2X1 >= 0 = a__U22#(mark(X1),X2) mark#(isList(X)) = 0 >= 0 = a__isList#(X) mark#(U23(X)) = 1/2X >= 1/2X = mark#(X) mark#(U31(X1,X2)) = X1 >= 1/2X1 = mark#(X1) mark#(U32(X)) = 1/2X >= 1/2X = mark#(X) mark#(U41(X1,X2,X3)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U41(X1,X2,X3)) = 1/2X1 >= 0 = a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) = X1 >= 1/2X1 = mark#(X1) mark#(U42(X1,X2)) = X1 >= 0 = a__U42#(mark(X1),X2) mark#(U43(X)) = 1/2X >= 1/2X = mark#(X) mark#(U51(X1,X2,X3)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U51(X1,X2,X3)) = 1/2X1 >= 0 = a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U52(X1,X2)) = 1/2X1 >= 0 = a__U52#(mark(X1),X2) mark#(U53(X)) = 1/2X >= 1/2X = mark#(X) mark#(U61(X1,X2)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U62(X)) = X >= 1/2X = mark#(X) mark#(U71(X1,X2)) = 1/2X1 >= 1/2X1 = mark#(X1) mark#(U71(X1,X2)) = 1/2X1 >= 0 = a__U71#(mark(X1),X2) a__U71#(tt(),V) = 0 >= 0 = a__isNePal#(V) a__isNePal#(V) = 0 >= 0 = a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) = 0 >= 0 = a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) = 0 >= 0 = a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) = X >= 1/2X = mark#(X) mark#(isNePal(X)) = 0 >= 0 = a__isNePal#(X) mark#(and(X1,X2)) = X1 + X2 >= 1/2X1 = mark#(X1) mark#(and(X1,X2)) = X1 + X2 >= X2 = a__and#(mark(X1),X2) mark#(isPalListKind(X)) = 0 >= 0 = a__isPalListKind#(X) mark#(isPal(X)) = 0 >= 0 = a__isPal#(X) a__isPal#(V) = 0 >= 0 = a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) = 1/2X + 1/2Y + 1/2Z >= 1/2Y = mark#(Y) a____#(__(X,Y),Z) = 1/2X + 1/2Y + 1/2Z >= 1/2Y + 1/2Z = a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) = 1/2X + 1/2Y + 1/2Z >= 1/2X = mark#(X) a____#(__(X,Y),Z) = 1/2X + 1/2Y + 1/2Z >= 1/2X + 1/2Y + 1/2Z = a____#(mark(X),a____(mark(Y),mark(Z))) a____#(X,nil()) = 1/2X + 1/2 >= 1/2X = mark#(X) a____#(nil(),X) = 1/2X + 1/2 >= 1/2X = mark#(X) a____(__(X,Y),Z) = X + Y + Z >= X + Y + Z = a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) = X + 1 >= X = mark(X) a____(nil(),X) = X + 1 >= X = mark(X) a__U11(tt(),V) = 0 >= 0 = a__U12(a__isNeList(V)) a__U12(tt()) = 0 >= 0 = tt() a__U21(tt(),V1,V2) = 0 >= 0 = a__U22(a__isList(V1),V2) a__U22(tt(),V2) = 0 >= 0 = a__U23(a__isList(V2)) a__U23(tt()) = 0 >= 0 = tt() a__U31(tt(),V) = 0 >= 0 = a__U32(a__isQid(V)) a__U32(tt()) = 0 >= 0 = tt() a__U41(tt(),V1,V2) = 0 >= 0 = a__U42(a__isList(V1),V2) a__U42(tt(),V2) = 0 >= 0 = a__U43(a__isNeList(V2)) a__U43(tt()) = 0 >= 0 = tt() a__U51(tt(),V1,V2) = 0 >= 0 = a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) = 0 >= 0 = a__U53(a__isList(V2)) a__U53(tt()) = 0 >= 0 = tt() a__U61(tt(),V) = 0 >= 0 = a__U62(a__isQid(V)) a__U62(tt()) = 0 >= 0 = tt() a__U71(tt(),V) = 0 >= 0 = a__U72(a__isNePal(V)) a__U72(tt()) = 0 >= 0 = tt() a__and(tt(),X) = 2X >= X = mark(X) a__isList(V) = 0 >= 0 = a__U11(a__isPalListKind(V),V) a__isList(nil()) = 0 >= 0 = tt() a__isList(__(V1,V2)) = 0 >= 0 = a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) = 0 >= 0 = a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) = 0 >= 0 = a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) = 0 >= 0 = a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) = 0 >= 0 = a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) = 0 >= 0 = a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) = 0 >= 0 = a__U71(a__isPalListKind(V),V) a__isPal(nil()) = 0 >= 0 = tt() a__isPalListKind(a()) = 0 >= 0 = tt() a__isPalListKind(e()) = 0 >= 0 = tt() a__isPalListKind(i()) = 0 >= 0 = tt() a__isPalListKind(nil()) = 0 >= 0 = tt() a__isPalListKind(o()) = 0 >= 0 = tt() a__isPalListKind(u()) = 0 >= 0 = tt() a__isPalListKind(__(V1,V2)) = 0 >= 0 = a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) = 0 >= 0 = tt() a__isQid(e()) = 0 >= 0 = tt() a__isQid(i()) = 0 >= 0 = tt() a__isQid(o()) = 0 >= 0 = tt() a__isQid(u()) = 0 >= 0 = tt() mark(__(X1,X2)) = X1 + X2 >= X1 + X2 = a____(mark(X1),mark(X2)) mark(U11(X1,X2)) = X1 >= X1 = a__U11(mark(X1),X2) mark(U12(X)) = X >= X = a__U12(mark(X)) mark(isNeList(X)) = 0 >= 0 = a__isNeList(X) mark(U21(X1,X2,X3)) = 2X1 >= 2X1 = a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) = X1 >= X1 = a__U22(mark(X1),X2) mark(isList(X)) = 0 >= 0 = a__isList(X) mark(U23(X)) = X >= X = a__U23(mark(X)) mark(U31(X1,X2)) = 2X1 >= 2X1 = a__U31(mark(X1),X2) mark(U32(X)) = X >= X = a__U32(mark(X)) mark(isQid(X)) = 0 >= 0 = a__isQid(X) mark(U41(X1,X2,X3)) = X1 >= X1 = a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) = 2X1 >= 2X1 = a__U42(mark(X1),X2) mark(U43(X)) = X >= X = a__U43(mark(X)) mark(U51(X1,X2,X3)) = X1 >= X1 = a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) = X1 >= X1 = a__U52(mark(X1),X2) mark(U53(X)) = X >= X = a__U53(mark(X)) mark(U61(X1,X2)) = X1 >= X1 = a__U61(mark(X1),X2) mark(U62(X)) = 2X >= 2X = a__U62(mark(X)) mark(U71(X1,X2)) = X1 >= X1 = a__U71(mark(X1),X2) mark(U72(X)) = 2X >= 2X = a__U72(mark(X)) mark(isNePal(X)) = 0 >= 0 = a__isNePal(X) mark(and(X1,X2)) = 2X1 + 2X2 >= 2X1 + 2X2 = a__and(mark(X1),X2) mark(isPalListKind(X)) = 0 >= 0 = a__isPalListKind(X) mark(isPal(X)) = 0 >= 0 = a__isPal(X) mark(nil()) = 1 >= 1 = nil() mark(tt()) = 0 >= 0 = tt() mark(a()) = 1 >= 1 = a() mark(e()) = 2 >= 2 = e() mark(i()) = 0 >= 0 = i() mark(o()) = 2 >= 2 = o() mark(u()) = 0 >= 0 = u() a____(X1,X2) = X1 + X2 >= X1 + X2 = __(X1,X2) a__U11(X1,X2) = X1 >= X1 = U11(X1,X2) a__U12(X) = X >= X = U12(X) a__isNeList(X) = 0 >= 0 = isNeList(X) a__U21(X1,X2,X3) = 2X1 >= 2X1 = U21(X1,X2,X3) a__U22(X1,X2) = X1 >= X1 = U22(X1,X2) a__isList(X) = 0 >= 0 = isList(X) a__U23(X) = X >= X = U23(X) a__U31(X1,X2) = 2X1 >= 2X1 = U31(X1,X2) a__U32(X) = X >= X = U32(X) a__isQid(X) = 0 >= 0 = isQid(X) a__U41(X1,X2,X3) = X1 >= X1 = U41(X1,X2,X3) a__U42(X1,X2) = 2X1 >= 2X1 = U42(X1,X2) a__U43(X) = X >= X = U43(X) a__U51(X1,X2,X3) = X1 >= X1 = U51(X1,X2,X3) a__U52(X1,X2) = X1 >= X1 = U52(X1,X2) a__U53(X) = X >= X = U53(X) a__U61(X1,X2) = X1 >= X1 = U61(X1,X2) a__U62(X) = 2X >= 2X = U62(X) a__U71(X1,X2) = X1 >= X1 = U71(X1,X2) a__U72(X) = 2X >= 2X = U72(X) a__isNePal(X) = 0 >= 0 = isNePal(X) a__and(X1,X2) = 2X1 + 2X2 >= 2X1 + 2X2 = and(X1,X2) a__isPalListKind(X) = 0 >= 0 = isPalListKind(X) a__isPal(X) = 0 >= 0 = isPal(X) problem: DPs: a__isPal#(V) -> a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) -> mark#(X) mark#(__(X1,X2)) -> mark#(X2) mark#(__(X1,X2)) -> mark#(X1) mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) a____#(__(X,Y),Z) -> mark#(Z) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) mark#(U12(X)) -> mark#(X) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U31(X1,X2)) -> mark#(X1) mark#(U32(X)) -> mark#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U61(X1,X2)) -> mark#(X1) mark#(U62(X)) -> mark#(X) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) a__U71#(tt(),V) -> a__isNePal#(V) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) -> mark#(X) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) -> mark#(Y) a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) -> mark#(X) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Restore Modifier: DPs: a__isPal#(V) -> a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) -> mark#(X) mark#(__(X1,X2)) -> mark#(X2) mark#(__(X1,X2)) -> mark#(X1) mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) a____#(__(X,Y),Z) -> mark#(Z) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) mark#(U12(X)) -> mark#(X) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U31(X1,X2)) -> mark#(X1) mark#(U32(X)) -> mark#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U61(X1,X2)) -> mark#(X1) mark#(U62(X)) -> mark#(X) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) a__U71#(tt(),V) -> a__isNePal#(V) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) -> mark#(X) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) -> mark#(Y) a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) -> mark#(X) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Matrix Interpretation Processor: dim=3 usable rules: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) interpretation: [a__isPal#](x0) = [0], [a__isPalListKind#](x0) = [0], [a__and#](x0, x1) = [0 0 1]x1, [a__isNePal#](x0) = [0], [a__U71#](x0, x1) = [0], [a__U52#](x0, x1) = [0], [a__U51#](x0, x1, x2) = [0], [a__U42#](x0, x1) = [0], [a__U41#](x0, x1, x2) = [0], [a__U22#](x0, x1) = [0], [a__isList#](x0) = [0], [a__U21#](x0, x1, x2) = [0], [a__isNeList#](x0) = [0], [a__U11#](x0, x1) = [0], [mark#](x0) = [0 0 1]x0, [a____#](x0, x1) = [0 0 1]x0 + [0 0 1]x1, [0] [isNePal](x0) = [0] [0], [0 0 0] [U72](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [U71](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [U62](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [U61](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [U53](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [U52](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [U51](x0, x1, x2) = [0 0 0]x0 [0 0 1] , [0 0 0] [U43](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [U42](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [U41](x0, x1, x2) = [0 0 0]x0 [0 0 1] , [0] [isQid](x0) = [0] [0], [0 0 0] [U32](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [U31](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [U23](x0) = [0 0 0]x0 [0 0 1] , [0] [isList](x0) = [0] [0], [0 0 0] [U22](x0, x1) = [0 0 0]x0 [0 1 1] , [0 0 0] [U21](x0, x1, x2) = [0 0 0]x0 [0 0 1] , [0] [isNeList](x0) = [0] [0], [0 0 0] [U12](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [U11](x0, x1) = [0 0 0]x0 [0 0 1] , [0] [u] = [0] [0], [0] [o] = [0] [0], [0] [i] = [0] [0], [0] [e] = [0] [0], [0] [a] = [0] [0], [0] [a__isPal](x0) = [0] [0], [0 0 0] [0 0 0] [and](x0, x1) = [0 0 0]x0 + [0 0 0]x1 [0 0 1] [0 0 1] , [0] [isPal](x0) = [0] [0], [0] [isPalListKind](x0) = [0] [0], [0] [a__isPalListKind](x0) = [0] [0], [0 0 0] [0 0 0] [a__and](x0, x1) = [0 0 0]x0 + [0 0 0]x1 [0 0 1] [0 0 1] , [0 0 0] [a__U72](x0) = [0 0 0]x0 [0 0 1] , [0] [a__isNePal](x0) = [0] [0], [0 0 0] [a__U71](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U62](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U61](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U53](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U52](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U51](x0, x1, x2) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U43](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U42](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U41](x0, x1, x2) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U32](x0) = [0 0 0]x0 [0 0 1] , [0] [a__isQid](x0) = [0] [0], [0 0 0] [a__U31](x0, x1) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U23](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U22](x0, x1) = [0 1 0]x0 [0 1 1] , [0] [a__isList](x0) = [0] [0], [0 0 0] [a__U21](x0, x1, x2) = [0 0 0]x0 [0 0 1] , [0 0 0] [a__U12](x0) = [0 0 0]x0 [0 0 1] , [0] [a__isNeList](x0) = [0] [0], [0 0 0] [a__U11](x0, x1) = [0 0 0]x0 [0 0 1] , [0] [tt] = [0] [0], [0] [nil] = [0] [0], [0 0 0] [mark](x0) = [0 0 0]x0 [0 0 1] , [0 0 0] [0 0 0] [0] [a____](x0, x1) = [0 0 0]x0 + [0 0 0]x1 + [0] [0 0 1] [1 0 1] [1], [0 0 0] [0 0 0] [0] [__](x0, x1) = [0 0 0]x0 + [0 0 0]x1 + [0] [0 0 1] [1 0 1] [1] orientation: a__isPal#(V) = [0] >= [0] = a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) = [0] >= [0] = a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) = [0] >= [0] = a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(__(X1,X2)) = [0 0 1]X1 + [1 0 1]X2 + [1] >= [0 0 1]X2 = mark#(X2) mark#(__(X1,X2)) = [0 0 1]X1 + [1 0 1]X2 + [1] >= [0 0 1]X1 = mark#(X1) mark#(__(X1,X2)) = [0 0 1]X1 + [1 0 1]X2 + [1] >= [0 0 1]X1 + [0 0 1]X2 = a____#(mark(X1),mark(X2)) a____#(__(X,Y),Z) = [0 0 1]X + [1 0 1]Y + [0 0 1]Z + [1] >= [0 0 1]Z = mark#(Z) mark#(U11(X1,X2)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U11(X1,X2)) = [0 0 1]X1 >= [0] = a__U11#(mark(X1),X2) a__U11#(tt(),V) = [0] >= [0] = a__isNeList#(V) a__isNeList#(V) = [0] >= [0] = a__isPalListKind#(V) a__isNeList#(__(V1,V2)) = [0] >= [0] = a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) = [0] >= [0] = a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) = [0] >= [0] = a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) = [0] >= [0] = a__isList#(V1) a__isList#(V) = [0] >= [0] = a__isPalListKind#(V) a__isList#(V) = [0] >= [0] = a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) = [0] >= [0] = a__isPalListKind#(V1) a__isList#(__(V1,V2)) = [0] >= [0] = a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) = [0] >= [0] = a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) = [0] >= [0] = a__isList#(V1) a__U21#(tt(),V1,V2) = [0] >= [0] = a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) = [0] >= [0] = a__isList#(V2) a__U41#(tt(),V1,V2) = [0] >= [0] = a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) = [0] >= [0] = a__isNeList#(V2) a__isNeList#(__(V1,V2)) = [0] >= [0] = a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) = [0] >= [0] = a__isNeList#(V1) a__U51#(tt(),V1,V2) = [0] >= [0] = a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) = [0] >= [0] = a__isList#(V2) mark#(U12(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(isNeList(X)) = [0] >= [0] = a__isNeList#(X) mark#(U21(X1,X2,X3)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U21(X1,X2,X3)) = [0 0 1]X1 >= [0] = a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) = [0 1 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U22(X1,X2)) = [0 1 1]X1 >= [0] = a__U22#(mark(X1),X2) mark#(isList(X)) = [0] >= [0] = a__isList#(X) mark#(U23(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(U31(X1,X2)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U32(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(U41(X1,X2,X3)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U41(X1,X2,X3)) = [0 0 1]X1 >= [0] = a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U42(X1,X2)) = [0 0 1]X1 >= [0] = a__U42#(mark(X1),X2) mark#(U43(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(U51(X1,X2,X3)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U51(X1,X2,X3)) = [0 0 1]X1 >= [0] = a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U52(X1,X2)) = [0 0 1]X1 >= [0] = a__U52#(mark(X1),X2) mark#(U53(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(U61(X1,X2)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U62(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(U71(X1,X2)) = [0 0 1]X1 >= [0 0 1]X1 = mark#(X1) mark#(U71(X1,X2)) = [0 0 1]X1 >= [0] = a__U71#(mark(X1),X2) a__U71#(tt(),V) = [0] >= [0] = a__isNePal#(V) a__isNePal#(V) = [0] >= [0] = a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) = [0] >= [0] = a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) = [0] >= [0] = a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) = [0 0 1]X >= [0 0 1]X = mark#(X) mark#(isNePal(X)) = [0] >= [0] = a__isNePal#(X) mark#(and(X1,X2)) = [0 0 1]X1 + [0 0 1]X2 >= [0 0 1]X1 = mark#(X1) mark#(and(X1,X2)) = [0 0 1]X1 + [0 0 1]X2 >= [0 0 1]X2 = a__and#(mark(X1),X2) mark#(isPalListKind(X)) = [0] >= [0] = a__isPalListKind#(X) mark#(isPal(X)) = [0] >= [0] = a__isPal#(X) a__isPal#(V) = [0] >= [0] = a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) = [0 0 1]X + [1 0 1]Y + [0 0 1]Z + [1] >= [0 0 1]Y = mark#(Y) a____#(__(X,Y),Z) = [0 0 1]X + [1 0 1]Y + [0 0 1]Z + [1] >= [0 0 1]Y + [0 0 1]Z = a____#(mark(Y),mark(Z)) a____#(__(X,Y),Z) = [0 0 1]X + [1 0 1]Y + [0 0 1]Z + [1] >= [0 0 1]X = mark#(X) a____#(__(X,Y),Z) = [0 0 1]X + [1 0 1]Y + [0 0 1]Z + [1] >= [0 0 1]X + [0 0 1]Y + [0 0 1]Z + [1] = a____#(mark(X),a____(mark(Y),mark(Z))) [0 0 0] [0 0 0] [0 0 0] [0] [0 0 0] [0 0 0] [0 0 0] [0] a____(__(X,Y),Z) = [0 0 0]X + [0 0 0]Y + [0 0 0]Z + [0] >= [0 0 0]X + [0 0 0]Y + [0 0 0]Z + [0] = a____(mark(X),a____(mark(Y),mark(Z))) [0 0 1] [1 0 1] [1 0 1] [2] [0 0 1] [0 0 1] [0 0 1] [2] [0 0 0] [0] [0 0 0] a____(X,nil()) = [0 0 0]X + [0] >= [0 0 0]X = mark(X) [0 0 1] [1] [0 0 1] [0 0 0] [0] [0 0 0] a____(nil(),X) = [0 0 0]X + [0] >= [0 0 0]X = mark(X) [1 0 1] [1] [0 0 1] [0] [0] a__U11(tt(),V) = [0] >= [0] = a__U12(a__isNeList(V)) [0] [0] [0] [0] a__U12(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] a__U21(tt(),V1,V2) = [0] >= [0] = a__U22(a__isList(V1),V2) [0] [0] [0] [0] a__U22(tt(),V2) = [0] >= [0] = a__U23(a__isList(V2)) [0] [0] [0] [0] a__U23(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] a__U31(tt(),V) = [0] >= [0] = a__U32(a__isQid(V)) [0] [0] [0] [0] a__U32(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] a__U41(tt(),V1,V2) = [0] >= [0] = a__U42(a__isList(V1),V2) [0] [0] [0] [0] a__U42(tt(),V2) = [0] >= [0] = a__U43(a__isNeList(V2)) [0] [0] [0] [0] a__U43(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] a__U51(tt(),V1,V2) = [0] >= [0] = a__U52(a__isNeList(V1),V2) [0] [0] [0] [0] a__U52(tt(),V2) = [0] >= [0] = a__U53(a__isList(V2)) [0] [0] [0] [0] a__U53(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] a__U61(tt(),V) = [0] >= [0] = a__U62(a__isQid(V)) [0] [0] [0] [0] a__U62(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] a__U71(tt(),V) = [0] >= [0] = a__U72(a__isNePal(V)) [0] [0] [0] [0] a__U72(tt()) = [0] >= [0] = tt() [0] [0] [0 0 0] [0 0 0] a__and(tt(),X) = [0 0 0]X >= [0 0 0]X = mark(X) [0 0 1] [0 0 1] [0] [0] a__isList(V) = [0] >= [0] = a__U11(a__isPalListKind(V),V) [0] [0] [0] [0] a__isList(nil()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isList(__(V1,V2)) = [0] >= [0] = a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) [0] [0] [0] [0] a__isNeList(V) = [0] >= [0] = a__U31(a__isPalListKind(V),V) [0] [0] [0] [0] a__isNeList(__(V1,V2)) = [0] >= [0] = a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) [0] [0] [0] [0] a__isNeList(__(V1,V2)) = [0] >= [0] = a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) [0] [0] [0] [0] a__isNePal(V) = [0] >= [0] = a__U61(a__isPalListKind(V),V) [0] [0] [0] [0] a__isNePal(__(I,__(P,I))) = [0] >= [0] = a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) [0] [0] [0] [0] a__isPal(V) = [0] >= [0] = a__U71(a__isPalListKind(V),V) [0] [0] [0] [0] a__isPal(nil()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(a()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(e()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(i()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(nil()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(o()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(u()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isPalListKind(__(V1,V2)) = [0] >= [0] = a__and(a__isPalListKind(V1),isPalListKind(V2)) [0] [0] [0] [0] a__isQid(a()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isQid(e()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isQid(i()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isQid(o()) = [0] >= [0] = tt() [0] [0] [0] [0] a__isQid(u()) = [0] >= [0] = tt() [0] [0] [0 0 0] [0 0 0] [0] [0 0 0] [0 0 0] [0] mark(__(X1,X2)) = [0 0 0]X1 + [0 0 0]X2 + [0] >= [0 0 0]X1 + [0 0 0]X2 + [0] = a____(mark(X1),mark(X2)) [0 0 1] [1 0 1] [1] [0 0 1] [0 0 1] [1] [0 0 0] [0 0 0] mark(U11(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U11(mark(X1),X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U12(X)) = [0 0 0]X >= [0 0 0]X = a__U12(mark(X)) [0 0 1] [0 0 1] [0] [0] mark(isNeList(X)) = [0] >= [0] = a__isNeList(X) [0] [0] [0 0 0] [0 0 0] mark(U21(X1,X2,X3)) = [0 0 0]X1 >= [0 0 0]X1 = a__U21(mark(X1),X2,X3) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U22(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U22(mark(X1),X2) [0 1 1] [0 0 1] [0] [0] mark(isList(X)) = [0] >= [0] = a__isList(X) [0] [0] [0 0 0] [0 0 0] mark(U23(X)) = [0 0 0]X >= [0 0 0]X = a__U23(mark(X)) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U31(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U31(mark(X1),X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U32(X)) = [0 0 0]X >= [0 0 0]X = a__U32(mark(X)) [0 0 1] [0 0 1] [0] [0] mark(isQid(X)) = [0] >= [0] = a__isQid(X) [0] [0] [0 0 0] [0 0 0] mark(U41(X1,X2,X3)) = [0 0 0]X1 >= [0 0 0]X1 = a__U41(mark(X1),X2,X3) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U42(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U42(mark(X1),X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U43(X)) = [0 0 0]X >= [0 0 0]X = a__U43(mark(X)) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U51(X1,X2,X3)) = [0 0 0]X1 >= [0 0 0]X1 = a__U51(mark(X1),X2,X3) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U52(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U52(mark(X1),X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U53(X)) = [0 0 0]X >= [0 0 0]X = a__U53(mark(X)) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U61(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U61(mark(X1),X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U62(X)) = [0 0 0]X >= [0 0 0]X = a__U62(mark(X)) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U71(X1,X2)) = [0 0 0]X1 >= [0 0 0]X1 = a__U71(mark(X1),X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] mark(U72(X)) = [0 0 0]X >= [0 0 0]X = a__U72(mark(X)) [0 0 1] [0 0 1] [0] [0] mark(isNePal(X)) = [0] >= [0] = a__isNePal(X) [0] [0] [0 0 0] [0 0 0] [0 0 0] [0 0 0] mark(and(X1,X2)) = [0 0 0]X1 + [0 0 0]X2 >= [0 0 0]X1 + [0 0 0]X2 = a__and(mark(X1),X2) [0 0 1] [0 0 1] [0 0 1] [0 0 1] [0] [0] mark(isPalListKind(X)) = [0] >= [0] = a__isPalListKind(X) [0] [0] [0] [0] mark(isPal(X)) = [0] >= [0] = a__isPal(X) [0] [0] [0] [0] mark(nil()) = [0] >= [0] = nil() [0] [0] [0] [0] mark(tt()) = [0] >= [0] = tt() [0] [0] [0] [0] mark(a()) = [0] >= [0] = a() [0] [0] [0] [0] mark(e()) = [0] >= [0] = e() [0] [0] [0] [0] mark(i()) = [0] >= [0] = i() [0] [0] [0] [0] mark(o()) = [0] >= [0] = o() [0] [0] [0] [0] mark(u()) = [0] >= [0] = u() [0] [0] [0 0 0] [0 0 0] [0] [0 0 0] [0 0 0] [0] a____(X1,X2) = [0 0 0]X1 + [0 0 0]X2 + [0] >= [0 0 0]X1 + [0 0 0]X2 + [0] = __(X1,X2) [0 0 1] [1 0 1] [1] [0 0 1] [1 0 1] [1] [0 0 0] [0 0 0] a__U11(X1,X2) = [0 0 0]X1 >= [0 0 0]X1 = U11(X1,X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U12(X) = [0 0 0]X >= [0 0 0]X = U12(X) [0 0 1] [0 0 1] [0] [0] a__isNeList(X) = [0] >= [0] = isNeList(X) [0] [0] [0 0 0] [0 0 0] a__U21(X1,X2,X3) = [0 0 0]X1 >= [0 0 0]X1 = U21(X1,X2,X3) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U22(X1,X2) = [0 1 0]X1 >= [0 0 0]X1 = U22(X1,X2) [0 1 1] [0 1 1] [0] [0] a__isList(X) = [0] >= [0] = isList(X) [0] [0] [0 0 0] [0 0 0] a__U23(X) = [0 0 0]X >= [0 0 0]X = U23(X) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U31(X1,X2) = [0 0 0]X1 >= [0 0 0]X1 = U31(X1,X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U32(X) = [0 0 0]X >= [0 0 0]X = U32(X) [0 0 1] [0 0 1] [0] [0] a__isQid(X) = [0] >= [0] = isQid(X) [0] [0] [0 0 0] [0 0 0] a__U41(X1,X2,X3) = [0 0 0]X1 >= [0 0 0]X1 = U41(X1,X2,X3) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U42(X1,X2) = [0 0 0]X1 >= [0 0 0]X1 = U42(X1,X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U43(X) = [0 0 0]X >= [0 0 0]X = U43(X) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U51(X1,X2,X3) = [0 0 0]X1 >= [0 0 0]X1 = U51(X1,X2,X3) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U52(X1,X2) = [0 0 0]X1 >= [0 0 0]X1 = U52(X1,X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U53(X) = [0 0 0]X >= [0 0 0]X = U53(X) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U61(X1,X2) = [0 0 0]X1 >= [0 0 0]X1 = U61(X1,X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U62(X) = [0 0 0]X >= [0 0 0]X = U62(X) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U71(X1,X2) = [0 0 0]X1 >= [0 0 0]X1 = U71(X1,X2) [0 0 1] [0 0 1] [0 0 0] [0 0 0] a__U72(X) = [0 0 0]X >= [0 0 0]X = U72(X) [0 0 1] [0 0 1] [0] [0] a__isNePal(X) = [0] >= [0] = isNePal(X) [0] [0] [0 0 0] [0 0 0] [0 0 0] [0 0 0] a__and(X1,X2) = [0 0 0]X1 + [0 0 0]X2 >= [0 0 0]X1 + [0 0 0]X2 = and(X1,X2) [0 0 1] [0 0 1] [0 0 1] [0 0 1] [0] [0] a__isPalListKind(X) = [0] >= [0] = isPalListKind(X) [0] [0] [0] [0] a__isPal(X) = [0] >= [0] = isPal(X) [0] [0] problem: DPs: a__isPal#(V) -> a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) -> mark#(X) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) mark#(U12(X)) -> mark#(X) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U31(X1,X2)) -> mark#(X1) mark#(U32(X)) -> mark#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U61(X1,X2)) -> mark#(X1) mark#(U62(X)) -> mark#(X) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) a__U71#(tt(),V) -> a__isNePal#(V) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) -> mark#(X) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Restore Modifier: DPs: a__isPal#(V) -> a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) -> mark#(X) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) mark#(U12(X)) -> mark#(X) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U31(X1,X2)) -> mark#(X1) mark#(U32(X)) -> mark#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U61(X1,X2)) -> mark#(X1) mark#(U62(X)) -> mark#(X) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) a__U71#(tt(),V) -> a__isNePal#(V) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) -> mark#(X) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) SCC Processor: #sccs: 2 #rules: 62 #arcs: 1028/3844 DPs: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Matrix Interpretation Processor: dim=1 usable rules: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) interpretation: [a____#](x0, x1) = 4x0, [isNePal](x0) = 2x0 + 7, [U72](x0) = 0, [U71](x0, x1) = 0, [U62](x0) = 1, [U61](x0, x1) = x0 + 1, [U53](x0) = 0, [U52](x0, x1) = 0, [U51](x0, x1, x2) = 0, [U43](x0) = 0, [U42](x0, x1) = 0, [U41](x0, x1, x2) = 0, [isQid](x0) = 0, [U32](x0) = 2x0, [U31](x0, x1) = 0, [U23](x0) = 0, [isList](x0) = 4x0, [U22](x0, x1) = 5, [U21](x0, x1, x2) = 5, [isNeList](x0) = 0, [U12](x0) = 0, [U11](x0, x1) = 0, [u] = 2, [o] = 6, [i] = 4, [e] = 4, [a] = 0, [a__isPal](x0) = 0, [and](x0, x1) = x0 + x1 + 7, [isPal](x0) = 0, [isPalListKind](x0) = 2x0 + 1, [a__isPalListKind](x0) = 2x0 + 1, [a__and](x0, x1) = x0 + x1 + 7, [a__U72](x0) = 0, [a__isNePal](x0) = 2x0 + 7, [a__U71](x0, x1) = 0, [a__U62](x0) = 1, [a__U61](x0, x1) = x0 + 1, [a__U53](x0) = 0, [a__U52](x0, x1) = 0, [a__U51](x0, x1, x2) = 0, [a__U43](x0) = 0, [a__U42](x0, x1) = 0, [a__U41](x0, x1, x2) = 0, [a__U32](x0) = 2x0, [a__isQid](x0) = 0, [a__U31](x0, x1) = 0, [a__U23](x0) = 0, [a__U22](x0, x1) = 5, [a__isList](x0) = 4x0, [a__U21](x0, x1, x2) = 5, [a__U12](x0) = 0, [a__isNeList](x0) = 0, [a__U11](x0, x1) = 0, [tt] = 0, [nil] = 4, [mark](x0) = x0, [a____](x0, x1) = x0 + x1 + 4, [__](x0, x1) = x0 + x1 + 4 orientation: a____#(__(X,Y),Z) = 4X + 4Y + 16 >= 4X = a____#(mark(X),a____(mark(Y),mark(Z))) a____(__(X,Y),Z) = X + Y + Z + 8 >= X + Y + Z + 8 = a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) = X + 8 >= X = mark(X) a____(nil(),X) = X + 8 >= X = mark(X) a__U11(tt(),V) = 0 >= 0 = a__U12(a__isNeList(V)) a__U12(tt()) = 0 >= 0 = tt() a__U21(tt(),V1,V2) = 5 >= 5 = a__U22(a__isList(V1),V2) a__U22(tt(),V2) = 5 >= 0 = a__U23(a__isList(V2)) a__U23(tt()) = 0 >= 0 = tt() a__U31(tt(),V) = 0 >= 0 = a__U32(a__isQid(V)) a__U32(tt()) = 0 >= 0 = tt() a__U41(tt(),V1,V2) = 0 >= 0 = a__U42(a__isList(V1),V2) a__U42(tt(),V2) = 0 >= 0 = a__U43(a__isNeList(V2)) a__U43(tt()) = 0 >= 0 = tt() a__U51(tt(),V1,V2) = 0 >= 0 = a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) = 0 >= 0 = a__U53(a__isList(V2)) a__U53(tt()) = 0 >= 0 = tt() a__U61(tt(),V) = 1 >= 1 = a__U62(a__isQid(V)) a__U62(tt()) = 1 >= 0 = tt() a__U71(tt(),V) = 0 >= 0 = a__U72(a__isNePal(V)) a__U72(tt()) = 0 >= 0 = tt() a__and(tt(),X) = X + 7 >= X = mark(X) a__isList(V) = 4V >= 0 = a__U11(a__isPalListKind(V),V) a__isList(nil()) = 16 >= 0 = tt() a__isList(__(V1,V2)) = 4V1 + 4V2 + 16 >= 5 = a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) = 0 >= 0 = a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) = 0 >= 0 = a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) = 0 >= 0 = a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) = 2V + 7 >= 2V + 2 = a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) = 4I + 2P + 23 >= 2I + 2P + 23 = a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) = 0 >= 0 = a__U71(a__isPalListKind(V),V) a__isPal(nil()) = 0 >= 0 = tt() a__isPalListKind(a()) = 1 >= 0 = tt() a__isPalListKind(e()) = 9 >= 0 = tt() a__isPalListKind(i()) = 9 >= 0 = tt() a__isPalListKind(nil()) = 9 >= 0 = tt() a__isPalListKind(o()) = 13 >= 0 = tt() a__isPalListKind(u()) = 5 >= 0 = tt() a__isPalListKind(__(V1,V2)) = 2V1 + 2V2 + 9 >= 2V1 + 2V2 + 9 = a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) = 0 >= 0 = tt() a__isQid(e()) = 0 >= 0 = tt() a__isQid(i()) = 0 >= 0 = tt() a__isQid(o()) = 0 >= 0 = tt() a__isQid(u()) = 0 >= 0 = tt() mark(__(X1,X2)) = X1 + X2 + 4 >= X1 + X2 + 4 = a____(mark(X1),mark(X2)) mark(U11(X1,X2)) = 0 >= 0 = a__U11(mark(X1),X2) mark(U12(X)) = 0 >= 0 = a__U12(mark(X)) mark(isNeList(X)) = 0 >= 0 = a__isNeList(X) mark(U21(X1,X2,X3)) = 5 >= 5 = a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) = 5 >= 5 = a__U22(mark(X1),X2) mark(isList(X)) = 4X >= 4X = a__isList(X) mark(U23(X)) = 0 >= 0 = a__U23(mark(X)) mark(U31(X1,X2)) = 0 >= 0 = a__U31(mark(X1),X2) mark(U32(X)) = 2X >= 2X = a__U32(mark(X)) mark(isQid(X)) = 0 >= 0 = a__isQid(X) mark(U41(X1,X2,X3)) = 0 >= 0 = a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) = 0 >= 0 = a__U42(mark(X1),X2) mark(U43(X)) = 0 >= 0 = a__U43(mark(X)) mark(U51(X1,X2,X3)) = 0 >= 0 = a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) = 0 >= 0 = a__U52(mark(X1),X2) mark(U53(X)) = 0 >= 0 = a__U53(mark(X)) mark(U61(X1,X2)) = X1 + 1 >= X1 + 1 = a__U61(mark(X1),X2) mark(U62(X)) = 1 >= 1 = a__U62(mark(X)) mark(U71(X1,X2)) = 0 >= 0 = a__U71(mark(X1),X2) mark(U72(X)) = 0 >= 0 = a__U72(mark(X)) mark(isNePal(X)) = 2X + 7 >= 2X + 7 = a__isNePal(X) mark(and(X1,X2)) = X1 + X2 + 7 >= X1 + X2 + 7 = a__and(mark(X1),X2) mark(isPalListKind(X)) = 2X + 1 >= 2X + 1 = a__isPalListKind(X) mark(isPal(X)) = 0 >= 0 = a__isPal(X) mark(nil()) = 4 >= 4 = nil() mark(tt()) = 0 >= 0 = tt() mark(a()) = 0 >= 0 = a() mark(e()) = 4 >= 4 = e() mark(i()) = 4 >= 4 = i() mark(o()) = 6 >= 6 = o() mark(u()) = 2 >= 2 = u() a____(X1,X2) = X1 + X2 + 4 >= X1 + X2 + 4 = __(X1,X2) a__U11(X1,X2) = 0 >= 0 = U11(X1,X2) a__U12(X) = 0 >= 0 = U12(X) a__isNeList(X) = 0 >= 0 = isNeList(X) a__U21(X1,X2,X3) = 5 >= 5 = U21(X1,X2,X3) a__U22(X1,X2) = 5 >= 5 = U22(X1,X2) a__isList(X) = 4X >= 4X = isList(X) a__U23(X) = 0 >= 0 = U23(X) a__U31(X1,X2) = 0 >= 0 = U31(X1,X2) a__U32(X) = 2X >= 2X = U32(X) a__isQid(X) = 0 >= 0 = isQid(X) a__U41(X1,X2,X3) = 0 >= 0 = U41(X1,X2,X3) a__U42(X1,X2) = 0 >= 0 = U42(X1,X2) a__U43(X) = 0 >= 0 = U43(X) a__U51(X1,X2,X3) = 0 >= 0 = U51(X1,X2,X3) a__U52(X1,X2) = 0 >= 0 = U52(X1,X2) a__U53(X) = 0 >= 0 = U53(X) a__U61(X1,X2) = X1 + 1 >= X1 + 1 = U61(X1,X2) a__U62(X) = 1 >= 1 = U62(X) a__U71(X1,X2) = 0 >= 0 = U71(X1,X2) a__U72(X) = 0 >= 0 = U72(X) a__isNePal(X) = 2X + 7 >= 2X + 7 = isNePal(X) a__and(X1,X2) = X1 + X2 + 7 >= X1 + X2 + 7 = and(X1,X2) a__isPalListKind(X) = 2X + 1 >= 2X + 1 = isPalListKind(X) a__isPal(X) = 0 >= 0 = isPal(X) problem: DPs: TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Qed DPs: a__isPal#(V) -> a__isPalListKind#(V) a__isPalListKind#(__(V1,V2)) -> a__isPalListKind#(V1) a__isPalListKind#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__and#(tt(),X) -> mark#(X) mark#(U11(X1,X2)) -> mark#(X1) mark#(U11(X1,X2)) -> a__U11#(mark(X1),X2) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isNeList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isNeList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isNeList#(__(V1,V2)) -> a__U41#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U41#(tt(),V1,V2) -> a__isList#(V1) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__isList#(__(V1,V2)) -> a__isPalListKind#(V1) a__isList#(__(V1,V2)) -> a__and#(a__isPalListKind(V1),isPalListKind(V2)) a__isList#(__(V1,V2)) -> a__U21#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U21#(tt(),V1,V2) -> a__isList#(V1) a__U21#(tt(),V1,V2) -> a__U22#(a__isList(V1),V2) a__U22#(tt(),V2) -> a__isList#(V2) a__U41#(tt(),V1,V2) -> a__U42#(a__isList(V1),V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__isNeList#(__(V1,V2)) -> a__U51#(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__U51#(tt(),V1,V2) -> a__isNeList#(V1) a__U51#(tt(),V1,V2) -> a__U52#(a__isNeList(V1),V2) a__U52#(tt(),V2) -> a__isList#(V2) mark#(U12(X)) -> mark#(X) mark#(isNeList(X)) -> a__isNeList#(X) mark#(U21(X1,X2,X3)) -> mark#(X1) mark#(U21(X1,X2,X3)) -> a__U21#(mark(X1),X2,X3) mark#(U22(X1,X2)) -> mark#(X1) mark#(U22(X1,X2)) -> a__U22#(mark(X1),X2) mark#(isList(X)) -> a__isList#(X) mark#(U23(X)) -> mark#(X) mark#(U31(X1,X2)) -> mark#(X1) mark#(U32(X)) -> mark#(X) mark#(U41(X1,X2,X3)) -> mark#(X1) mark#(U41(X1,X2,X3)) -> a__U41#(mark(X1),X2,X3) mark#(U42(X1,X2)) -> mark#(X1) mark#(U42(X1,X2)) -> a__U42#(mark(X1),X2) mark#(U43(X)) -> mark#(X) mark#(U51(X1,X2,X3)) -> mark#(X1) mark#(U51(X1,X2,X3)) -> a__U51#(mark(X1),X2,X3) mark#(U52(X1,X2)) -> mark#(X1) mark#(U52(X1,X2)) -> a__U52#(mark(X1),X2) mark#(U53(X)) -> mark#(X) mark#(U61(X1,X2)) -> mark#(X1) mark#(U62(X)) -> mark#(X) mark#(U71(X1,X2)) -> mark#(X1) mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) a__U71#(tt(),V) -> a__isNePal#(V) a__isNePal#(V) -> a__isPalListKind#(V) a__isNePal#(__(I,__(P,I))) -> a__and#(a__isQid(I),isPalListKind(I)) a__isNePal#(__(I,__(P,I))) -> a__and#(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) mark#(U72(X)) -> mark#(X) mark#(isNePal(X)) -> a__isNePal#(X) mark#(and(X1,X2)) -> mark#(X1) mark#(and(X1,X2)) -> a__and#(mark(X1),X2) mark#(isPalListKind(X)) -> a__isPalListKind#(X) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) Subterm Criterion Processor: simple projection: pi(isPalListKind) = 0 pi(isPal) = 0 pi(and) = [0,1,1,1] pi(mark#) = [0,0] pi(a__U11#) = 1 pi(a__isNeList#) = 0 pi(a__U21#) = [1,2] pi(a__isList#) = 0 pi(a__U22#) = 1 pi(a__U41#) = [1,2] pi(a__U42#) = 1 pi(a__U51#) = [1,2] pi(a__U52#) = 1 pi(a__U71#) = [1,1] pi(a__isNePal#) = [0,0] pi(a__and#) = [1,1] pi(a__isPalListKind#) = 0 pi(a__isPal#) = [0,0] problem: DPs: a__and#(tt(),X) -> mark#(X) a__U11#(tt(),V) -> a__isNeList#(V) a__isNeList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__isPalListKind#(V) a__isList#(V) -> a__U11#(a__isPalListKind(V),V) a__U22#(tt(),V2) -> a__isList#(V2) a__U42#(tt(),V2) -> a__isNeList#(V2) a__U52#(tt(),V2) -> a__isList#(V2) a__U71#(tt(),V) -> a__isNePal#(V) mark#(isPal(X)) -> a__isPal#(X) a__isPal#(V) -> a__U71#(a__isPalListKind(V),V) TRS: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) a____(X,nil()) -> mark(X) a____(nil(),X) -> mark(X) a__U11(tt(),V) -> a__U12(a__isNeList(V)) a__U12(tt()) -> tt() a__U21(tt(),V1,V2) -> a__U22(a__isList(V1),V2) a__U22(tt(),V2) -> a__U23(a__isList(V2)) a__U23(tt()) -> tt() a__U31(tt(),V) -> a__U32(a__isQid(V)) a__U32(tt()) -> tt() a__U41(tt(),V1,V2) -> a__U42(a__isList(V1),V2) a__U42(tt(),V2) -> a__U43(a__isNeList(V2)) a__U43(tt()) -> tt() a__U51(tt(),V1,V2) -> a__U52(a__isNeList(V1),V2) a__U52(tt(),V2) -> a__U53(a__isList(V2)) a__U53(tt()) -> tt() a__U61(tt(),V) -> a__U62(a__isQid(V)) a__U62(tt()) -> tt() a__U71(tt(),V) -> a__U72(a__isNePal(V)) a__U72(tt()) -> tt() a__and(tt(),X) -> mark(X) a__isList(V) -> a__U11(a__isPalListKind(V),V) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(V) -> a__U31(a__isPalListKind(V),V) a__isNeList(__(V1,V2)) -> a__U41(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNeList(__(V1,V2)) -> a__U51(a__and(a__isPalListKind(V1),isPalListKind(V2)),V1,V2) a__isNePal(V) -> a__U61(a__isPalListKind(V),V) a__isNePal(__(I,__(P,I))) -> a__and(a__and(a__isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))) a__isPal(V) -> a__U71(a__isPalListKind(V),V) a__isPal(nil()) -> tt() a__isPalListKind(a()) -> tt() a__isPalListKind(e()) -> tt() a__isPalListKind(i()) -> tt() a__isPalListKind(nil()) -> tt() a__isPalListKind(o()) -> tt() a__isPalListKind(u()) -> tt() a__isPalListKind(__(V1,V2)) -> a__and(a__isPalListKind(V1),isPalListKind(V2)) a__isQid(a()) -> tt() a__isQid(e()) -> tt() a__isQid(i()) -> tt() a__isQid(o()) -> tt() a__isQid(u()) -> tt() mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(U12(X)) -> a__U12(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) mark(U22(X1,X2)) -> a__U22(mark(X1),X2) mark(isList(X)) -> a__isList(X) mark(U23(X)) -> a__U23(mark(X)) mark(U31(X1,X2)) -> a__U31(mark(X1),X2) mark(U32(X)) -> a__U32(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) mark(U42(X1,X2)) -> a__U42(mark(X1),X2) mark(U43(X)) -> a__U43(mark(X)) mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) mark(U52(X1,X2)) -> a__U52(mark(X1),X2) mark(U53(X)) -> a__U53(mark(X)) mark(U61(X1,X2)) -> a__U61(mark(X1),X2) mark(U62(X)) -> a__U62(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isNePal(X)) -> a__isNePal(X) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isPalListKind(X)) -> a__isPalListKind(X) mark(isPal(X)) -> a__isPal(X) mark(nil()) -> nil() mark(tt()) -> tt() mark(a()) -> a() mark(e()) -> e() mark(i()) -> i() mark(o()) -> o() mark(u()) -> u() a____(X1,X2) -> __(X1,X2) a__U11(X1,X2) -> U11(X1,X2) a__U12(X) -> U12(X) a__isNeList(X) -> isNeList(X) a__U21(X1,X2,X3) -> U21(X1,X2,X3) a__U22(X1,X2) -> U22(X1,X2) a__isList(X) -> isList(X) a__U23(X) -> U23(X) a__U31(X1,X2) -> U31(X1,X2) a__U32(X) -> U32(X) a__isQid(X) -> isQid(X) a__U41(X1,X2,X3) -> U41(X1,X2,X3) a__U42(X1,X2) -> U42(X1,X2) a__U43(X) -> U43(X) a__U51(X1,X2,X3) -> U51(X1,X2,X3) a__U52(X1,X2) -> U52(X1,X2) a__U53(X) -> U53(X) a__U61(X1,X2) -> U61(X1,X2) a__U62(X) -> U62(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isNePal(X) -> isNePal(X) a__and(X1,X2) -> and(X1,X2) a__isPalListKind(X) -> isPalListKind(X) a__isPal(X) -> isPal(X) SCC Processor: #sccs: 0 #rules: 0 #arcs: 705/121