YES Problem: __(__(X,Y),Z) -> __(X,__(Y,Z)) __(X,nil()) -> X __(nil(),X) -> X U11(tt(),V) -> U12(isNeList(activate(V))) U12(tt()) -> tt() U21(tt(),V1,V2) -> U22(isList(activate(V1)),activate(V2)) U22(tt(),V2) -> U23(isList(activate(V2))) U23(tt()) -> tt() U31(tt(),V) -> U32(isQid(activate(V))) U32(tt()) -> tt() U41(tt(),V1,V2) -> U42(isList(activate(V1)),activate(V2)) U42(tt(),V2) -> U43(isNeList(activate(V2))) U43(tt()) -> tt() U51(tt(),V1,V2) -> U52(isNeList(activate(V1)),activate(V2)) U52(tt(),V2) -> U53(isList(activate(V2))) U53(tt()) -> tt() U61(tt(),V) -> U62(isQid(activate(V))) U62(tt()) -> tt() U71(tt(),V) -> U72(isNePal(activate(V))) U72(tt()) -> tt() and(tt(),X) -> activate(X) isList(V) -> U11(isPalListKind(activate(V)),activate(V)) isList(n__nil()) -> tt() isList(n____(V1,V2)) -> U21(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) isNeList(n____(V1,V2)) -> U41(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList(n____(V1,V2)) -> U51(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) isNePal(n____(I,__(P,I))) -> and(and(isQid(activate(I)),n__isPalListKind(activate(I))),n__and(isPal(activate(P)), n__isPalListKind (activate(P)))) isPal(V) -> U71(isPalListKind(activate(V)),activate(V)) isPal(n__nil()) -> tt() isPalListKind(n__a()) -> tt() isPalListKind(n__e()) -> tt() isPalListKind(n__i()) -> tt() isPalListKind(n__nil()) -> tt() isPalListKind(n__o()) -> tt() isPalListKind(n__u()) -> tt() isPalListKind(n____(V1,V2)) -> and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isQid(n__a()) -> tt() isQid(n__e()) -> tt() isQid(n__i()) -> tt() isQid(n__o()) -> tt() isQid(n__u()) -> tt() nil() -> n__nil() __(X1,X2) -> n____(X1,X2) isPalListKind(X) -> n__isPalListKind(X) and(X1,X2) -> n__and(X1,X2) a() -> n__a() e() -> n__e() i() -> n__i() o() -> n__o() u() -> n__u() activate(n__nil()) -> nil() activate(n____(X1,X2)) -> __(X1,X2) activate(n__isPalListKind(X)) -> isPalListKind(X) activate(n__and(X1,X2)) -> and(X1,X2) activate(n__a()) -> a() activate(n__e()) -> e() activate(n__i()) -> i() activate(n__o()) -> o() activate(n__u()) -> u() activate(X) -> X Proof: DP Processor: DPs: __#(__(X,Y),Z) -> __#(Y,Z) __#(__(X,Y),Z) -> __#(X,__(Y,Z)) U11#(tt(),V) -> activate#(V) U11#(tt(),V) -> isNeList#(activate(V)) U11#(tt(),V) -> U12#(isNeList(activate(V))) U21#(tt(),V1,V2) -> activate#(V2) U21#(tt(),V1,V2) -> activate#(V1) U21#(tt(),V1,V2) -> isList#(activate(V1)) U21#(tt(),V1,V2) -> U22#(isList(activate(V1)),activate(V2)) U22#(tt(),V2) -> activate#(V2) U22#(tt(),V2) -> isList#(activate(V2)) U22#(tt(),V2) -> U23#(isList(activate(V2))) U31#(tt(),V) -> activate#(V) U31#(tt(),V) -> isQid#(activate(V)) U31#(tt(),V) -> U32#(isQid(activate(V))) U41#(tt(),V1,V2) -> activate#(V2) U41#(tt(),V1,V2) -> activate#(V1) U41#(tt(),V1,V2) -> isList#(activate(V1)) U41#(tt(),V1,V2) -> U42#(isList(activate(V1)),activate(V2)) U42#(tt(),V2) -> activate#(V2) U42#(tt(),V2) -> isNeList#(activate(V2)) U42#(tt(),V2) -> U43#(isNeList(activate(V2))) U51#(tt(),V1,V2) -> activate#(V2) U51#(tt(),V1,V2) -> activate#(V1) U51#(tt(),V1,V2) -> isNeList#(activate(V1)) U51#(tt(),V1,V2) -> U52#(isNeList(activate(V1)),activate(V2)) U52#(tt(),V2) -> activate#(V2) U52#(tt(),V2) -> isList#(activate(V2)) U52#(tt(),V2) -> U53#(isList(activate(V2))) U61#(tt(),V) -> activate#(V) U61#(tt(),V) -> isQid#(activate(V)) U61#(tt(),V) -> U62#(isQid(activate(V))) U71#(tt(),V) -> activate#(V) U71#(tt(),V) -> isNePal#(activate(V)) U71#(tt(),V) -> U72#(isNePal(activate(V))) and#(tt(),X) -> activate#(X) isList#(V) -> activate#(V) isList#(V) -> isPalListKind#(activate(V)) isList#(V) -> U11#(isPalListKind(activate(V)),activate(V)) isList#(n____(V1,V2)) -> activate#(V2) isList#(n____(V1,V2)) -> activate#(V1) isList#(n____(V1,V2)) -> isPalListKind#(activate(V1)) isList#(n____(V1,V2)) -> and#(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isList#(n____(V1,V2)) -> U21#(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList#(V) -> activate#(V) isNeList#(V) -> isPalListKind#(activate(V)) isNeList#(V) -> U31#(isPalListKind(activate(V)),activate(V)) isNeList#(n____(V1,V2)) -> activate#(V2) isNeList#(n____(V1,V2)) -> activate#(V1) isNeList#(n____(V1,V2)) -> isPalListKind#(activate(V1)) isNeList#(n____(V1,V2)) -> and#(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isNeList#(n____(V1,V2)) -> U41#(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList#(n____(V1,V2)) -> U51#(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNePal#(V) -> activate#(V) isNePal#(V) -> isPalListKind#(activate(V)) isNePal#(V) -> U61#(isPalListKind(activate(V)),activate(V)) isNePal#(n____(I,__(P,I))) -> activate#(P) isNePal#(n____(I,__(P,I))) -> isPal#(activate(P)) isNePal#(n____(I,__(P,I))) -> activate#(I) isNePal#(n____(I,__(P,I))) -> isQid#(activate(I)) isNePal#(n____(I,__(P,I))) -> and#(isQid(activate(I)),n__isPalListKind(activate(I))) isNePal#(n____(I,__(P,I))) -> and#(and(isQid(activate(I)),n__isPalListKind(activate(I))),n__and( isPal(activate(P)), n__isPalListKind (activate(P)))) isPal#(V) -> activate#(V) isPal#(V) -> isPalListKind#(activate(V)) isPal#(V) -> U71#(isPalListKind(activate(V)),activate(V)) isPalListKind#(n____(V1,V2)) -> activate#(V2) isPalListKind#(n____(V1,V2)) -> activate#(V1) isPalListKind#(n____(V1,V2)) -> isPalListKind#(activate(V1)) isPalListKind#(n____(V1,V2)) -> and#(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) activate#(n__nil()) -> nil#() activate#(n____(X1,X2)) -> __#(X1,X2) activate#(n__isPalListKind(X)) -> isPalListKind#(X) activate#(n__and(X1,X2)) -> and#(X1,X2) activate#(n__a()) -> a#() activate#(n__e()) -> e#() activate#(n__i()) -> i#() activate#(n__o()) -> o#() activate#(n__u()) -> u#() TRS: __(__(X,Y),Z) -> __(X,__(Y,Z)) __(X,nil()) -> X __(nil(),X) -> X U11(tt(),V) -> U12(isNeList(activate(V))) U12(tt()) -> tt() U21(tt(),V1,V2) -> U22(isList(activate(V1)),activate(V2)) U22(tt(),V2) -> U23(isList(activate(V2))) U23(tt()) -> tt() U31(tt(),V) -> U32(isQid(activate(V))) U32(tt()) -> tt() U41(tt(),V1,V2) -> U42(isList(activate(V1)),activate(V2)) U42(tt(),V2) -> U43(isNeList(activate(V2))) U43(tt()) -> tt() U51(tt(),V1,V2) -> U52(isNeList(activate(V1)),activate(V2)) U52(tt(),V2) -> U53(isList(activate(V2))) U53(tt()) -> tt() U61(tt(),V) -> U62(isQid(activate(V))) U62(tt()) -> tt() U71(tt(),V) -> U72(isNePal(activate(V))) U72(tt()) -> tt() and(tt(),X) -> activate(X) isList(V) -> U11(isPalListKind(activate(V)),activate(V)) isList(n__nil()) -> tt() isList(n____(V1,V2)) -> U21(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) isNeList(n____(V1,V2)) -> U41(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList(n____(V1,V2)) -> U51(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) isNePal(n____(I,__(P,I))) -> and(and(isQid(activate(I)),n__isPalListKind(activate(I))),n__and(isPal(activate(P)), n__isPalListKind (activate(P)))) isPal(V) -> U71(isPalListKind(activate(V)),activate(V)) isPal(n__nil()) -> tt() isPalListKind(n__a()) -> tt() isPalListKind(n__e()) -> tt() isPalListKind(n__i()) -> tt() isPalListKind(n__nil()) -> tt() isPalListKind(n__o()) -> tt() isPalListKind(n__u()) -> tt() isPalListKind(n____(V1,V2)) -> and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isQid(n__a()) -> tt() isQid(n__e()) -> tt() isQid(n__i()) -> tt() isQid(n__o()) -> tt() isQid(n__u()) -> tt() nil() -> n__nil() __(X1,X2) -> n____(X1,X2) isPalListKind(X) -> n__isPalListKind(X) and(X1,X2) -> n__and(X1,X2) a() -> n__a() e() -> n__e() i() -> n__i() o() -> n__o() u() -> n__u() activate(n__nil()) -> nil() activate(n____(X1,X2)) -> __(X1,X2) activate(n__isPalListKind(X)) -> isPalListKind(X) activate(n__and(X1,X2)) -> and(X1,X2) activate(n__a()) -> a() activate(n__e()) -> e() activate(n__i()) -> i() activate(n__o()) -> o() activate(n__u()) -> u() activate(X) -> X Matrix Interpretation Processor: dim=1 usable rules: __(__(X,Y),Z) -> __(X,__(Y,Z)) __(X,nil()) -> X __(nil(),X) -> X U71(tt(),V) -> U72(isNePal(activate(V))) U72(tt()) -> tt() and(tt(),X) -> activate(X) isPal(V) -> U71(isPalListKind(activate(V)),activate(V)) isPal(n__nil()) -> tt() isPalListKind(n__a()) -> tt() isPalListKind(n__e()) -> tt() isPalListKind(n__i()) -> tt() isPalListKind(n__nil()) -> tt() isPalListKind(n__o()) -> tt() isPalListKind(n__u()) -> tt() isPalListKind(n____(V1,V2)) -> and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) nil() -> n__nil() __(X1,X2) -> n____(X1,X2) isPalListKind(X) -> n__isPalListKind(X) and(X1,X2) -> n__and(X1,X2) a() -> n__a() e() -> n__e() i() -> n__i() o() -> n__o() u() -> n__u() activate(n__nil()) -> nil() activate(n____(X1,X2)) -> __(X1,X2) activate(n__isPalListKind(X)) -> isPalListKind(X) activate(n__and(X1,X2)) -> and(X1,X2) activate(n__a()) -> a() activate(n__e()) -> e() activate(n__i()) -> i() activate(n__o()) -> o() activate(n__u()) -> u() activate(X) -> X interpretation: [u#] = 0, [o#] = 0, [i#] = 0, [e#] = 0, [a#] = 0, [nil#] = 0, [isPal#](x0) = 5x0 + 7, [isPalListKind#](x0) = 4x0 + 1, [and#](x0, x1) = 2x1 + 1, [U72#](x0) = 3, [isNePal#](x0) = 4x0 + 3, [U71#](x0, x1) = 4x1 + 6, [U62#](x0) = 0, [U61#](x0, x1) = 4x1 + 2, [U53#](x0) = 1, [U52#](x0, x1) = 4x1 + 6, [U51#](x0, x1, x2) = 6x1 + 4x2 + 7, [U43#](x0) = 2, [U42#](x0, x1) = 4x1 + 4, [U41#](x0, x1, x2) = 4x1 + 4x2 + 6, [U32#](x0) = 0, [isQid#](x0) = 3x0, [U31#](x0, x1) = 3x1 + 1, [U23#](x0) = 1, [U22#](x0, x1) = 4x1 + 6, [isList#](x0) = 4x0 + 5, [U21#](x0, x1, x2) = 4x1 + 4x2 + 7, [U12#](x0) = 3, [isNeList#](x0) = 4x0 + 3, [activate#](x0) = 2x0, [U11#](x0, x1) = 4x1 + 4, [__#](x0, x1) = x0 + 2, [u] = 1, [o] = 4, [i] = 2, [e] = 1, [a] = 2, [n__u] = 1, [n__o] = 4, [n__i] = 2, [n__e] = 1, [n__a] = 2, [n__and](x0, x1) = x1 + 4, [isPal](x0) = 5x0 + 7, [n__isPalListKind](x0) = 2x0 + 1, [n____](x0, x1) = 4x0 + x1 + 2, [n__nil] = 1, [isPalListKind](x0) = 2x0 + 1, [and](x0, x1) = x1 + 4, [U72](x0) = 0, [isNePal](x0) = 2x0, [U71](x0, x1) = 1, [U62](x0) = 3, [U61](x0, x1) = 4x0 + x1 + 1, [U53](x0) = 0, [U52](x0, x1) = 5x0 + 2x1 + 2, [U51](x0, x1, x2) = 7x2 + 1, [U43](x0) = 0, [U42](x0, x1) = 7x0 + 4, [U41](x0, x1, x2) = 2x0 + 4x2 + 1, [U32](x0) = 0, [isQid](x0) = 0, [U31](x0, x1) = 2x1, [U23](x0) = 0, [U22](x0, x1) = 0, [isList](x0) = 2x0 + 1, [U21](x0, x1, x2) = x0 + 7x1 + 1, [U12](x0) = 6x0 + 1, [isNeList](x0) = 1, [activate](x0) = x0, [U11](x0, x1) = x0 + 1, [tt] = 0, [nil] = 1, [__](x0, x1) = 4x0 + x1 + 2 orientation: __#(__(X,Y),Z) = 4X + Y + 4 >= Y + 2 = __#(Y,Z) __#(__(X,Y),Z) = 4X + Y + 4 >= X + 2 = __#(X,__(Y,Z)) U11#(tt(),V) = 4V + 4 >= 2V = activate#(V) U11#(tt(),V) = 4V + 4 >= 4V + 3 = isNeList#(activate(V)) U11#(tt(),V) = 4V + 4 >= 3 = U12#(isNeList(activate(V))) U21#(tt(),V1,V2) = 4V1 + 4V2 + 7 >= 2V2 = activate#(V2) U21#(tt(),V1,V2) = 4V1 + 4V2 + 7 >= 2V1 = activate#(V1) U21#(tt(),V1,V2) = 4V1 + 4V2 + 7 >= 4V1 + 5 = isList#(activate(V1)) U21#(tt(),V1,V2) = 4V1 + 4V2 + 7 >= 4V2 + 6 = U22#(isList(activate(V1)),activate(V2)) U22#(tt(),V2) = 4V2 + 6 >= 2V2 = activate#(V2) U22#(tt(),V2) = 4V2 + 6 >= 4V2 + 5 = isList#(activate(V2)) U22#(tt(),V2) = 4V2 + 6 >= 1 = U23#(isList(activate(V2))) U31#(tt(),V) = 3V + 1 >= 2V = activate#(V) U31#(tt(),V) = 3V + 1 >= 3V = isQid#(activate(V)) U31#(tt(),V) = 3V + 1 >= 0 = U32#(isQid(activate(V))) U41#(tt(),V1,V2) = 4V1 + 4V2 + 6 >= 2V2 = activate#(V2) U41#(tt(),V1,V2) = 4V1 + 4V2 + 6 >= 2V1 = activate#(V1) U41#(tt(),V1,V2) = 4V1 + 4V2 + 6 >= 4V1 + 5 = isList#(activate(V1)) U41#(tt(),V1,V2) = 4V1 + 4V2 + 6 >= 4V2 + 4 = U42#(isList(activate(V1)),activate(V2)) U42#(tt(),V2) = 4V2 + 4 >= 2V2 = activate#(V2) U42#(tt(),V2) = 4V2 + 4 >= 4V2 + 3 = isNeList#(activate(V2)) U42#(tt(),V2) = 4V2 + 4 >= 2 = U43#(isNeList(activate(V2))) U51#(tt(),V1,V2) = 6V1 + 4V2 + 7 >= 2V2 = activate#(V2) U51#(tt(),V1,V2) = 6V1 + 4V2 + 7 >= 2V1 = activate#(V1) U51#(tt(),V1,V2) = 6V1 + 4V2 + 7 >= 4V1 + 3 = isNeList#(activate(V1)) U51#(tt(),V1,V2) = 6V1 + 4V2 + 7 >= 4V2 + 6 = U52#(isNeList(activate(V1)),activate(V2)) U52#(tt(),V2) = 4V2 + 6 >= 2V2 = activate#(V2) U52#(tt(),V2) = 4V2 + 6 >= 4V2 + 5 = isList#(activate(V2)) U52#(tt(),V2) = 4V2 + 6 >= 1 = U53#(isList(activate(V2))) U61#(tt(),V) = 4V + 2 >= 2V = activate#(V) U61#(tt(),V) = 4V + 2 >= 3V = isQid#(activate(V)) U61#(tt(),V) = 4V + 2 >= 0 = U62#(isQid(activate(V))) U71#(tt(),V) = 4V + 6 >= 2V = activate#(V) U71#(tt(),V) = 4V + 6 >= 4V + 3 = isNePal#(activate(V)) U71#(tt(),V) = 4V + 6 >= 3 = U72#(isNePal(activate(V))) and#(tt(),X) = 2X + 1 >= 2X = activate#(X) isList#(V) = 4V + 5 >= 2V = activate#(V) isList#(V) = 4V + 5 >= 4V + 1 = isPalListKind#(activate(V)) isList#(V) = 4V + 5 >= 4V + 4 = U11#(isPalListKind(activate(V)),activate(V)) isList#(n____(V1,V2)) = 16V1 + 4V2 + 13 >= 2V2 = activate#(V2) isList#(n____(V1,V2)) = 16V1 + 4V2 + 13 >= 2V1 = activate#(V1) isList#(n____(V1,V2)) = 16V1 + 4V2 + 13 >= 4V1 + 1 = isPalListKind#(activate(V1)) isList#(n____(V1,V2)) = 16V1 + 4V2 + 13 >= 4V2 + 3 = and#(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isList#(n____(V1,V2)) = 16V1 + 4V2 + 13 >= 4V1 + 4V2 + 7 = U21#(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))), activate(V1),activate(V2)) isNeList#(V) = 4V + 3 >= 2V = activate#(V) isNeList#(V) = 4V + 3 >= 4V + 1 = isPalListKind#(activate(V)) isNeList#(V) = 4V + 3 >= 3V + 1 = U31#(isPalListKind(activate(V)),activate(V)) isNeList#(n____(V1,V2)) = 16V1 + 4V2 + 11 >= 2V2 = activate#(V2) isNeList#(n____(V1,V2)) = 16V1 + 4V2 + 11 >= 2V1 = activate#(V1) isNeList#(n____(V1,V2)) = 16V1 + 4V2 + 11 >= 4V1 + 1 = isPalListKind#(activate(V1)) isNeList#(n____(V1,V2)) = 16V1 + 4V2 + 11 >= 4V2 + 3 = and#(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isNeList#(n____(V1,V2)) = 16V1 + 4V2 + 11 >= 4V1 + 4V2 + 6 = U41#(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))), activate(V1),activate(V2)) isNeList#(n____(V1,V2)) = 16V1 + 4V2 + 11 >= 6V1 + 4V2 + 7 = U51#(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))), activate(V1),activate(V2)) isNePal#(V) = 4V + 3 >= 2V = activate#(V) isNePal#(V) = 4V + 3 >= 4V + 1 = isPalListKind#(activate(V)) isNePal#(V) = 4V + 3 >= 4V + 2 = U61#(isPalListKind(activate(V)),activate(V)) isNePal#(n____(I,__(P,I))) = 20I + 16P + 19 >= 2P = activate#(P) isNePal#(n____(I,__(P,I))) = 20I + 16P + 19 >= 5P + 7 = isPal#(activate(P)) isNePal#(n____(I,__(P,I))) = 20I + 16P + 19 >= 2I = activate#(I) isNePal#(n____(I,__(P,I))) = 20I + 16P + 19 >= 3I = isQid#(activate(I)) isNePal#(n____(I,__(P,I))) = 20I + 16P + 19 >= 4I + 3 = and#(isQid(activate(I)),n__isPalListKind(activate(I))) isNePal#(n____(I,__(P,I))) = 20I + 16P + 19 >= 4P + 11 = and#(and(isQid(activate(I)),n__isPalListKind(activate(I))),n__and(isPal (activate (P)), n__isPalListKind (activate (P)))) isPal#(V) = 5V + 7 >= 2V = activate#(V) isPal#(V) = 5V + 7 >= 4V + 1 = isPalListKind#(activate(V)) isPal#(V) = 5V + 7 >= 4V + 6 = U71#(isPalListKind(activate(V)),activate(V)) isPalListKind#(n____(V1,V2)) = 16V1 + 4V2 + 9 >= 2V2 = activate#(V2) isPalListKind#(n____(V1,V2)) = 16V1 + 4V2 + 9 >= 2V1 = activate#(V1) isPalListKind#(n____(V1,V2)) = 16V1 + 4V2 + 9 >= 4V1 + 1 = isPalListKind#(activate(V1)) isPalListKind#(n____(V1,V2)) = 16V1 + 4V2 + 9 >= 4V2 + 3 = and#(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) activate#(n__nil()) = 2 >= 0 = nil#() activate#(n____(X1,X2)) = 8X1 + 2X2 + 4 >= X1 + 2 = __#(X1,X2) activate#(n__isPalListKind(X)) = 4X + 2 >= 4X + 1 = isPalListKind#(X) activate#(n__and(X1,X2)) = 2X2 + 8 >= 2X2 + 1 = and#(X1,X2) activate#(n__a()) = 4 >= 0 = a#() activate#(n__e()) = 2 >= 0 = e#() activate#(n__i()) = 4 >= 0 = i#() activate#(n__o()) = 8 >= 0 = o#() activate#(n__u()) = 2 >= 0 = u#() __(__(X,Y),Z) = 16X + 4Y + Z + 10 >= 4X + 4Y + Z + 4 = __(X,__(Y,Z)) __(X,nil()) = 4X + 3 >= X = X __(nil(),X) = X + 6 >= X = X U11(tt(),V) = 1 >= 7 = U12(isNeList(activate(V))) U12(tt()) = 1 >= 0 = tt() U21(tt(),V1,V2) = 7V1 + 1 >= 0 = U22(isList(activate(V1)),activate(V2)) U22(tt(),V2) = 0 >= 0 = U23(isList(activate(V2))) U23(tt()) = 0 >= 0 = tt() U31(tt(),V) = 2V >= 0 = U32(isQid(activate(V))) U32(tt()) = 0 >= 0 = tt() U41(tt(),V1,V2) = 4V2 + 1 >= 14V1 + 11 = U42(isList(activate(V1)),activate(V2)) U42(tt(),V2) = 4 >= 0 = U43(isNeList(activate(V2))) U43(tt()) = 0 >= 0 = tt() U51(tt(),V1,V2) = 7V2 + 1 >= 2V2 + 7 = U52(isNeList(activate(V1)),activate(V2)) U52(tt(),V2) = 2V2 + 2 >= 0 = U53(isList(activate(V2))) U53(tt()) = 0 >= 0 = tt() U61(tt(),V) = V + 1 >= 3 = U62(isQid(activate(V))) U62(tt()) = 3 >= 0 = tt() U71(tt(),V) = 1 >= 0 = U72(isNePal(activate(V))) U72(tt()) = 0 >= 0 = tt() and(tt(),X) = X + 4 >= X = activate(X) isList(V) = 2V + 1 >= 2V + 2 = U11(isPalListKind(activate(V)),activate(V)) isList(n__nil()) = 3 >= 0 = tt() isList(n____(V1,V2)) = 8V1 + 2V2 + 5 >= 7V1 + 2V2 + 6 = U21(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate ( V1), activate(V2)) isNeList(V) = 1 >= 2V = U31(isPalListKind(activate(V)),activate(V)) isNeList(n____(V1,V2)) = 1 >= 8V2 + 11 = U41(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate ( V1), activate(V2)) isNeList(n____(V1,V2)) = 1 >= 7V2 + 1 = U51(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate ( V1), activate(V2)) isNePal(V) = 2V >= 9V + 5 = U61(isPalListKind(activate(V)),activate(V)) isNePal(n____(I,__(P,I))) = 10I + 8P + 8 >= 2P + 9 = and(and(isQid(activate(I)),n__isPalListKind(activate(I))),n__and(isPal (activate(P)), n__isPalListKind (activate(P)))) isPal(V) = 5V + 7 >= 1 = U71(isPalListKind(activate(V)),activate(V)) isPal(n__nil()) = 12 >= 0 = tt() isPalListKind(n__a()) = 5 >= 0 = tt() isPalListKind(n__e()) = 3 >= 0 = tt() isPalListKind(n__i()) = 5 >= 0 = tt() isPalListKind(n__nil()) = 3 >= 0 = tt() isPalListKind(n__o()) = 9 >= 0 = tt() isPalListKind(n__u()) = 3 >= 0 = tt() isPalListKind(n____(V1,V2)) = 8V1 + 2V2 + 5 >= 2V2 + 5 = and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isQid(n__a()) = 0 >= 0 = tt() isQid(n__e()) = 0 >= 0 = tt() isQid(n__i()) = 0 >= 0 = tt() isQid(n__o()) = 0 >= 0 = tt() isQid(n__u()) = 0 >= 0 = tt() nil() = 1 >= 1 = n__nil() __(X1,X2) = 4X1 + X2 + 2 >= 4X1 + X2 + 2 = n____(X1,X2) isPalListKind(X) = 2X + 1 >= 2X + 1 = n__isPalListKind(X) and(X1,X2) = X2 + 4 >= X2 + 4 = n__and(X1,X2) a() = 2 >= 2 = n__a() e() = 1 >= 1 = n__e() i() = 2 >= 2 = n__i() o() = 4 >= 4 = n__o() u() = 1 >= 1 = n__u() activate(n__nil()) = 1 >= 1 = nil() activate(n____(X1,X2)) = 4X1 + X2 + 2 >= 4X1 + X2 + 2 = __(X1,X2) activate(n__isPalListKind(X)) = 2X + 1 >= 2X + 1 = isPalListKind(X) activate(n__and(X1,X2)) = X2 + 4 >= X2 + 4 = and(X1,X2) activate(n__a()) = 2 >= 2 = a() activate(n__e()) = 1 >= 1 = e() activate(n__i()) = 2 >= 2 = i() activate(n__o()) = 4 >= 4 = o() activate(n__u()) = 1 >= 1 = u() activate(X) = X >= X = X problem: DPs: TRS: __(__(X,Y),Z) -> __(X,__(Y,Z)) __(X,nil()) -> X __(nil(),X) -> X U11(tt(),V) -> U12(isNeList(activate(V))) U12(tt()) -> tt() U21(tt(),V1,V2) -> U22(isList(activate(V1)),activate(V2)) U22(tt(),V2) -> U23(isList(activate(V2))) U23(tt()) -> tt() U31(tt(),V) -> U32(isQid(activate(V))) U32(tt()) -> tt() U41(tt(),V1,V2) -> U42(isList(activate(V1)),activate(V2)) U42(tt(),V2) -> U43(isNeList(activate(V2))) U43(tt()) -> tt() U51(tt(),V1,V2) -> U52(isNeList(activate(V1)),activate(V2)) U52(tt(),V2) -> U53(isList(activate(V2))) U53(tt()) -> tt() U61(tt(),V) -> U62(isQid(activate(V))) U62(tt()) -> tt() U71(tt(),V) -> U72(isNePal(activate(V))) U72(tt()) -> tt() and(tt(),X) -> activate(X) isList(V) -> U11(isPalListKind(activate(V)),activate(V)) isList(n__nil()) -> tt() isList(n____(V1,V2)) -> U21(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) isNeList(n____(V1,V2)) -> U41(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNeList(n____(V1,V2)) -> U51(and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))),activate(V1),activate(V2)) isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) isNePal(n____(I,__(P,I))) -> and(and(isQid(activate(I)),n__isPalListKind(activate(I))),n__and (isPal(activate(P)), n__isPalListKind (activate(P)))) isPal(V) -> U71(isPalListKind(activate(V)),activate(V)) isPal(n__nil()) -> tt() isPalListKind(n__a()) -> tt() isPalListKind(n__e()) -> tt() isPalListKind(n__i()) -> tt() isPalListKind(n__nil()) -> tt() isPalListKind(n__o()) -> tt() isPalListKind(n__u()) -> tt() isPalListKind(n____(V1,V2)) -> and(isPalListKind(activate(V1)),n__isPalListKind(activate(V2))) isQid(n__a()) -> tt() isQid(n__e()) -> tt() isQid(n__i()) -> tt() isQid(n__o()) -> tt() isQid(n__u()) -> tt() nil() -> n__nil() __(X1,X2) -> n____(X1,X2) isPalListKind(X) -> n__isPalListKind(X) and(X1,X2) -> n__and(X1,X2) a() -> n__a() e() -> n__e() i() -> n__i() o() -> n__o() u() -> n__u() activate(n__nil()) -> nil() activate(n____(X1,X2)) -> __(X1,X2) activate(n__isPalListKind(X)) -> isPalListKind(X) activate(n__and(X1,X2)) -> and(X1,X2) activate(n__a()) -> a() activate(n__e()) -> e() activate(n__i()) -> i() activate(n__o()) -> o() activate(n__u()) -> u() activate(X) -> X Qed