YES We show the termination of the TRS R: __(__(X,Y),Z) -> __(X,__(Y,Z)) __(X,nil()) -> X __(nil(),X) -> X U11(tt(),V) -> U12(isPalListKind(activate(V)),activate(V)) U12(tt(),V) -> U13(isNeList(activate(V))) U13(tt()) -> tt() U21(tt(),V1,V2) -> U22(isPalListKind(activate(V1)),activate(V1),activate(V2)) U22(tt(),V1,V2) -> U23(isPalListKind(activate(V2)),activate(V1),activate(V2)) U23(tt(),V1,V2) -> U24(isPalListKind(activate(V2)),activate(V1),activate(V2)) U24(tt(),V1,V2) -> U25(isList(activate(V1)),activate(V2)) U25(tt(),V2) -> U26(isList(activate(V2))) U26(tt()) -> tt() U31(tt(),V) -> U32(isPalListKind(activate(V)),activate(V)) U32(tt(),V) -> U33(isQid(activate(V))) U33(tt()) -> tt() U41(tt(),V1,V2) -> U42(isPalListKind(activate(V1)),activate(V1),activate(V2)) U42(tt(),V1,V2) -> U43(isPalListKind(activate(V2)),activate(V1),activate(V2)) U43(tt(),V1,V2) -> U44(isPalListKind(activate(V2)),activate(V1),activate(V2)) U44(tt(),V1,V2) -> U45(isList(activate(V1)),activate(V2)) U45(tt(),V2) -> U46(isNeList(activate(V2))) U46(tt()) -> tt() U51(tt(),V1,V2) -> U52(isPalListKind(activate(V1)),activate(V1),activate(V2)) U52(tt(),V1,V2) -> U53(isPalListKind(activate(V2)),activate(V1),activate(V2)) U53(tt(),V1,V2) -> U54(isPalListKind(activate(V2)),activate(V1),activate(V2)) U54(tt(),V1,V2) -> U55(isNeList(activate(V1)),activate(V2)) U55(tt(),V2) -> U56(isList(activate(V2))) U56(tt()) -> tt() U61(tt(),V) -> U62(isPalListKind(activate(V)),activate(V)) U62(tt(),V) -> U63(isQid(activate(V))) U63(tt()) -> tt() U71(tt(),I,P) -> U72(isPalListKind(activate(I)),activate(P)) U72(tt(),P) -> U73(isPal(activate(P)),activate(P)) U73(tt(),P) -> U74(isPalListKind(activate(P))) U74(tt()) -> tt() U81(tt(),V) -> U82(isPalListKind(activate(V)),activate(V)) U82(tt(),V) -> U83(isNePal(activate(V))) U83(tt()) -> tt() U91(tt(),V2) -> U92(isPalListKind(activate(V2))) U92(tt()) -> tt() isList(V) -> U11(isPalListKind(activate(V)),activate(V)) isList(n__nil()) -> tt() isList(n____(V1,V2)) -> U21(isPalListKind(activate(V1)),activate(V1),activate(V2)) isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) isNeList(n____(V1,V2)) -> U41(isPalListKind(activate(V1)),activate(V1),activate(V2)) isNeList(n____(V1,V2)) -> U51(isPalListKind(activate(V1)),activate(V1),activate(V2)) isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) isNePal(n____(I,__(P,I))) -> U71(isQid(activate(I)),activate(I),activate(P)) isPal(V) -> U81(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)) -> U91(isPalListKind(activate(V1)),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) 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__a()) -> a() activate(n__e()) -> e() activate(n__i()) -> i() activate(n__o()) -> o() activate(n__u()) -> u() activate(X) -> X -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: __#(__(X,Y),Z) -> __#(X,__(Y,Z)) p2: __#(__(X,Y),Z) -> __#(Y,Z) p3: U11#(tt(),V) -> U12#(isPalListKind(activate(V)),activate(V)) p4: U11#(tt(),V) -> isPalListKind#(activate(V)) p5: U11#(tt(),V) -> activate#(V) p6: U12#(tt(),V) -> U13#(isNeList(activate(V))) p7: U12#(tt(),V) -> isNeList#(activate(V)) p8: U12#(tt(),V) -> activate#(V) p9: U21#(tt(),V1,V2) -> U22#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p10: U21#(tt(),V1,V2) -> isPalListKind#(activate(V1)) p11: U21#(tt(),V1,V2) -> activate#(V1) p12: U21#(tt(),V1,V2) -> activate#(V2) p13: U22#(tt(),V1,V2) -> U23#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p14: U22#(tt(),V1,V2) -> isPalListKind#(activate(V2)) p15: U22#(tt(),V1,V2) -> activate#(V2) p16: U22#(tt(),V1,V2) -> activate#(V1) p17: U23#(tt(),V1,V2) -> U24#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p18: U23#(tt(),V1,V2) -> isPalListKind#(activate(V2)) p19: U23#(tt(),V1,V2) -> activate#(V2) p20: U23#(tt(),V1,V2) -> activate#(V1) p21: U24#(tt(),V1,V2) -> U25#(isList(activate(V1)),activate(V2)) p22: U24#(tt(),V1,V2) -> isList#(activate(V1)) p23: U24#(tt(),V1,V2) -> activate#(V1) p24: U24#(tt(),V1,V2) -> activate#(V2) p25: U25#(tt(),V2) -> U26#(isList(activate(V2))) p26: U25#(tt(),V2) -> isList#(activate(V2)) p27: U25#(tt(),V2) -> activate#(V2) p28: U31#(tt(),V) -> U32#(isPalListKind(activate(V)),activate(V)) p29: U31#(tt(),V) -> isPalListKind#(activate(V)) p30: U31#(tt(),V) -> activate#(V) p31: U32#(tt(),V) -> U33#(isQid(activate(V))) p32: U32#(tt(),V) -> isQid#(activate(V)) p33: U32#(tt(),V) -> activate#(V) p34: U41#(tt(),V1,V2) -> U42#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p35: U41#(tt(),V1,V2) -> isPalListKind#(activate(V1)) p36: U41#(tt(),V1,V2) -> activate#(V1) p37: U41#(tt(),V1,V2) -> activate#(V2) p38: U42#(tt(),V1,V2) -> U43#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p39: U42#(tt(),V1,V2) -> isPalListKind#(activate(V2)) p40: U42#(tt(),V1,V2) -> activate#(V2) p41: U42#(tt(),V1,V2) -> activate#(V1) p42: U43#(tt(),V1,V2) -> U44#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p43: U43#(tt(),V1,V2) -> isPalListKind#(activate(V2)) p44: U43#(tt(),V1,V2) -> activate#(V2) p45: U43#(tt(),V1,V2) -> activate#(V1) p46: U44#(tt(),V1,V2) -> U45#(isList(activate(V1)),activate(V2)) p47: U44#(tt(),V1,V2) -> isList#(activate(V1)) p48: U44#(tt(),V1,V2) -> activate#(V1) p49: U44#(tt(),V1,V2) -> activate#(V2) p50: U45#(tt(),V2) -> U46#(isNeList(activate(V2))) p51: U45#(tt(),V2) -> isNeList#(activate(V2)) p52: U45#(tt(),V2) -> activate#(V2) p53: U51#(tt(),V1,V2) -> U52#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p54: U51#(tt(),V1,V2) -> isPalListKind#(activate(V1)) p55: U51#(tt(),V1,V2) -> activate#(V1) p56: U51#(tt(),V1,V2) -> activate#(V2) p57: U52#(tt(),V1,V2) -> U53#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p58: U52#(tt(),V1,V2) -> isPalListKind#(activate(V2)) p59: U52#(tt(),V1,V2) -> activate#(V2) p60: U52#(tt(),V1,V2) -> activate#(V1) p61: U53#(tt(),V1,V2) -> U54#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p62: U53#(tt(),V1,V2) -> isPalListKind#(activate(V2)) p63: U53#(tt(),V1,V2) -> activate#(V2) p64: U53#(tt(),V1,V2) -> activate#(V1) p65: U54#(tt(),V1,V2) -> U55#(isNeList(activate(V1)),activate(V2)) p66: U54#(tt(),V1,V2) -> isNeList#(activate(V1)) p67: U54#(tt(),V1,V2) -> activate#(V1) p68: U54#(tt(),V1,V2) -> activate#(V2) p69: U55#(tt(),V2) -> U56#(isList(activate(V2))) p70: U55#(tt(),V2) -> isList#(activate(V2)) p71: U55#(tt(),V2) -> activate#(V2) p72: U61#(tt(),V) -> U62#(isPalListKind(activate(V)),activate(V)) p73: U61#(tt(),V) -> isPalListKind#(activate(V)) p74: U61#(tt(),V) -> activate#(V) p75: U62#(tt(),V) -> U63#(isQid(activate(V))) p76: U62#(tt(),V) -> isQid#(activate(V)) p77: U62#(tt(),V) -> activate#(V) p78: U71#(tt(),I,P) -> U72#(isPalListKind(activate(I)),activate(P)) p79: U71#(tt(),I,P) -> isPalListKind#(activate(I)) p80: U71#(tt(),I,P) -> activate#(I) p81: U71#(tt(),I,P) -> activate#(P) p82: U72#(tt(),P) -> U73#(isPal(activate(P)),activate(P)) p83: U72#(tt(),P) -> isPal#(activate(P)) p84: U72#(tt(),P) -> activate#(P) p85: U73#(tt(),P) -> U74#(isPalListKind(activate(P))) p86: U73#(tt(),P) -> isPalListKind#(activate(P)) p87: U73#(tt(),P) -> activate#(P) p88: U81#(tt(),V) -> U82#(isPalListKind(activate(V)),activate(V)) p89: U81#(tt(),V) -> isPalListKind#(activate(V)) p90: U81#(tt(),V) -> activate#(V) p91: U82#(tt(),V) -> U83#(isNePal(activate(V))) p92: U82#(tt(),V) -> isNePal#(activate(V)) p93: U82#(tt(),V) -> activate#(V) p94: U91#(tt(),V2) -> U92#(isPalListKind(activate(V2))) p95: U91#(tt(),V2) -> isPalListKind#(activate(V2)) p96: U91#(tt(),V2) -> activate#(V2) p97: isList#(V) -> U11#(isPalListKind(activate(V)),activate(V)) p98: isList#(V) -> isPalListKind#(activate(V)) p99: isList#(V) -> activate#(V) p100: isList#(n____(V1,V2)) -> U21#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p101: isList#(n____(V1,V2)) -> isPalListKind#(activate(V1)) p102: isList#(n____(V1,V2)) -> activate#(V1) p103: isList#(n____(V1,V2)) -> activate#(V2) p104: isNeList#(V) -> U31#(isPalListKind(activate(V)),activate(V)) p105: isNeList#(V) -> isPalListKind#(activate(V)) p106: isNeList#(V) -> activate#(V) p107: isNeList#(n____(V1,V2)) -> U41#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p108: isNeList#(n____(V1,V2)) -> isPalListKind#(activate(V1)) p109: isNeList#(n____(V1,V2)) -> activate#(V1) p110: isNeList#(n____(V1,V2)) -> activate#(V2) p111: isNeList#(n____(V1,V2)) -> U51#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p112: isNeList#(n____(V1,V2)) -> isPalListKind#(activate(V1)) p113: isNeList#(n____(V1,V2)) -> activate#(V1) p114: isNeList#(n____(V1,V2)) -> activate#(V2) p115: isNePal#(V) -> U61#(isPalListKind(activate(V)),activate(V)) p116: isNePal#(V) -> isPalListKind#(activate(V)) p117: isNePal#(V) -> activate#(V) p118: isNePal#(n____(I,__(P,I))) -> U71#(isQid(activate(I)),activate(I),activate(P)) p119: isNePal#(n____(I,__(P,I))) -> isQid#(activate(I)) p120: isNePal#(n____(I,__(P,I))) -> activate#(I) p121: isNePal#(n____(I,__(P,I))) -> activate#(P) p122: isPal#(V) -> U81#(isPalListKind(activate(V)),activate(V)) p123: isPal#(V) -> isPalListKind#(activate(V)) p124: isPal#(V) -> activate#(V) p125: isPalListKind#(n____(V1,V2)) -> U91#(isPalListKind(activate(V1)),activate(V2)) p126: isPalListKind#(n____(V1,V2)) -> isPalListKind#(activate(V1)) p127: isPalListKind#(n____(V1,V2)) -> activate#(V1) p128: isPalListKind#(n____(V1,V2)) -> activate#(V2) p129: activate#(n__nil()) -> nil#() p130: activate#(n____(X1,X2)) -> __#(X1,X2) p131: activate#(n__a()) -> a#() p132: activate#(n__e()) -> e#() p133: activate#(n__i()) -> i#() p134: activate#(n__o()) -> o#() p135: activate#(n__u()) -> u#() and R consists of: r1: __(__(X,Y),Z) -> __(X,__(Y,Z)) r2: __(X,nil()) -> X r3: __(nil(),X) -> X r4: U11(tt(),V) -> U12(isPalListKind(activate(V)),activate(V)) r5: U12(tt(),V) -> U13(isNeList(activate(V))) r6: U13(tt()) -> tt() r7: U21(tt(),V1,V2) -> U22(isPalListKind(activate(V1)),activate(V1),activate(V2)) r8: U22(tt(),V1,V2) -> U23(isPalListKind(activate(V2)),activate(V1),activate(V2)) r9: U23(tt(),V1,V2) -> U24(isPalListKind(activate(V2)),activate(V1),activate(V2)) r10: U24(tt(),V1,V2) -> U25(isList(activate(V1)),activate(V2)) r11: U25(tt(),V2) -> U26(isList(activate(V2))) r12: U26(tt()) -> tt() r13: U31(tt(),V) -> U32(isPalListKind(activate(V)),activate(V)) r14: U32(tt(),V) -> U33(isQid(activate(V))) r15: U33(tt()) -> tt() r16: U41(tt(),V1,V2) -> U42(isPalListKind(activate(V1)),activate(V1),activate(V2)) r17: U42(tt(),V1,V2) -> U43(isPalListKind(activate(V2)),activate(V1),activate(V2)) r18: U43(tt(),V1,V2) -> U44(isPalListKind(activate(V2)),activate(V1),activate(V2)) r19: U44(tt(),V1,V2) -> U45(isList(activate(V1)),activate(V2)) r20: U45(tt(),V2) -> U46(isNeList(activate(V2))) r21: U46(tt()) -> tt() r22: U51(tt(),V1,V2) -> U52(isPalListKind(activate(V1)),activate(V1),activate(V2)) r23: U52(tt(),V1,V2) -> U53(isPalListKind(activate(V2)),activate(V1),activate(V2)) r24: U53(tt(),V1,V2) -> U54(isPalListKind(activate(V2)),activate(V1),activate(V2)) r25: U54(tt(),V1,V2) -> U55(isNeList(activate(V1)),activate(V2)) r26: U55(tt(),V2) -> U56(isList(activate(V2))) r27: U56(tt()) -> tt() r28: U61(tt(),V) -> U62(isPalListKind(activate(V)),activate(V)) r29: U62(tt(),V) -> U63(isQid(activate(V))) r30: U63(tt()) -> tt() r31: U71(tt(),I,P) -> U72(isPalListKind(activate(I)),activate(P)) r32: U72(tt(),P) -> U73(isPal(activate(P)),activate(P)) r33: U73(tt(),P) -> U74(isPalListKind(activate(P))) r34: U74(tt()) -> tt() r35: U81(tt(),V) -> U82(isPalListKind(activate(V)),activate(V)) r36: U82(tt(),V) -> U83(isNePal(activate(V))) r37: U83(tt()) -> tt() r38: U91(tt(),V2) -> U92(isPalListKind(activate(V2))) r39: U92(tt()) -> tt() r40: isList(V) -> U11(isPalListKind(activate(V)),activate(V)) r41: isList(n__nil()) -> tt() r42: isList(n____(V1,V2)) -> U21(isPalListKind(activate(V1)),activate(V1),activate(V2)) r43: isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) r44: isNeList(n____(V1,V2)) -> U41(isPalListKind(activate(V1)),activate(V1),activate(V2)) r45: isNeList(n____(V1,V2)) -> U51(isPalListKind(activate(V1)),activate(V1),activate(V2)) r46: isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) r47: isNePal(n____(I,__(P,I))) -> U71(isQid(activate(I)),activate(I),activate(P)) r48: isPal(V) -> U81(isPalListKind(activate(V)),activate(V)) r49: isPal(n__nil()) -> tt() r50: isPalListKind(n__a()) -> tt() r51: isPalListKind(n__e()) -> tt() r52: isPalListKind(n__i()) -> tt() r53: isPalListKind(n__nil()) -> tt() r54: isPalListKind(n__o()) -> tt() r55: isPalListKind(n__u()) -> tt() r56: isPalListKind(n____(V1,V2)) -> U91(isPalListKind(activate(V1)),activate(V2)) r57: isQid(n__a()) -> tt() r58: isQid(n__e()) -> tt() r59: isQid(n__i()) -> tt() r60: isQid(n__o()) -> tt() r61: isQid(n__u()) -> tt() r62: nil() -> n__nil() r63: __(X1,X2) -> n____(X1,X2) r64: a() -> n__a() r65: e() -> n__e() r66: i() -> n__i() r67: o() -> n__o() r68: u() -> n__u() r69: activate(n__nil()) -> nil() r70: activate(n____(X1,X2)) -> __(X1,X2) r71: activate(n__a()) -> a() r72: activate(n__e()) -> e() r73: activate(n__i()) -> i() r74: activate(n__o()) -> o() r75: activate(n__u()) -> u() r76: activate(X) -> X The estimated dependency graph contains the following SCCs: {p78, p83, p88, p92, p118, p122} {p3, p7, p9, p13, p17, p21, p22, p26, p34, p38, p42, p46, p47, p51, p53, p57, p61, p65, p66, p70, p97, p100, p107, p111} {p95, p125, p126} {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U82#(tt(),V) -> isNePal#(activate(V)) p2: isNePal#(n____(I,__(P,I))) -> U71#(isQid(activate(I)),activate(I),activate(P)) p3: U71#(tt(),I,P) -> U72#(isPalListKind(activate(I)),activate(P)) p4: U72#(tt(),P) -> isPal#(activate(P)) p5: isPal#(V) -> U81#(isPalListKind(activate(V)),activate(V)) p6: U81#(tt(),V) -> U82#(isPalListKind(activate(V)),activate(V)) and R consists of: r1: __(__(X,Y),Z) -> __(X,__(Y,Z)) r2: __(X,nil()) -> X r3: __(nil(),X) -> X r4: U11(tt(),V) -> U12(isPalListKind(activate(V)),activate(V)) r5: U12(tt(),V) -> U13(isNeList(activate(V))) r6: U13(tt()) -> tt() r7: U21(tt(),V1,V2) -> U22(isPalListKind(activate(V1)),activate(V1),activate(V2)) r8: U22(tt(),V1,V2) -> U23(isPalListKind(activate(V2)),activate(V1),activate(V2)) r9: U23(tt(),V1,V2) -> U24(isPalListKind(activate(V2)),activate(V1),activate(V2)) r10: U24(tt(),V1,V2) -> U25(isList(activate(V1)),activate(V2)) r11: U25(tt(),V2) -> U26(isList(activate(V2))) r12: U26(tt()) -> tt() r13: U31(tt(),V) -> U32(isPalListKind(activate(V)),activate(V)) r14: U32(tt(),V) -> U33(isQid(activate(V))) r15: U33(tt()) -> tt() r16: U41(tt(),V1,V2) -> U42(isPalListKind(activate(V1)),activate(V1),activate(V2)) r17: U42(tt(),V1,V2) -> U43(isPalListKind(activate(V2)),activate(V1),activate(V2)) r18: U43(tt(),V1,V2) -> U44(isPalListKind(activate(V2)),activate(V1),activate(V2)) r19: U44(tt(),V1,V2) -> U45(isList(activate(V1)),activate(V2)) r20: U45(tt(),V2) -> U46(isNeList(activate(V2))) r21: U46(tt()) -> tt() r22: U51(tt(),V1,V2) -> U52(isPalListKind(activate(V1)),activate(V1),activate(V2)) r23: U52(tt(),V1,V2) -> U53(isPalListKind(activate(V2)),activate(V1),activate(V2)) r24: U53(tt(),V1,V2) -> U54(isPalListKind(activate(V2)),activate(V1),activate(V2)) r25: U54(tt(),V1,V2) -> U55(isNeList(activate(V1)),activate(V2)) r26: U55(tt(),V2) -> U56(isList(activate(V2))) r27: U56(tt()) -> tt() r28: U61(tt(),V) -> U62(isPalListKind(activate(V)),activate(V)) r29: U62(tt(),V) -> U63(isQid(activate(V))) r30: U63(tt()) -> tt() r31: U71(tt(),I,P) -> U72(isPalListKind(activate(I)),activate(P)) r32: U72(tt(),P) -> U73(isPal(activate(P)),activate(P)) r33: U73(tt(),P) -> U74(isPalListKind(activate(P))) r34: U74(tt()) -> tt() r35: U81(tt(),V) -> U82(isPalListKind(activate(V)),activate(V)) r36: U82(tt(),V) -> U83(isNePal(activate(V))) r37: U83(tt()) -> tt() r38: U91(tt(),V2) -> U92(isPalListKind(activate(V2))) r39: U92(tt()) -> tt() r40: isList(V) -> U11(isPalListKind(activate(V)),activate(V)) r41: isList(n__nil()) -> tt() r42: isList(n____(V1,V2)) -> U21(isPalListKind(activate(V1)),activate(V1),activate(V2)) r43: isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) r44: isNeList(n____(V1,V2)) -> U41(isPalListKind(activate(V1)),activate(V1),activate(V2)) r45: isNeList(n____(V1,V2)) -> U51(isPalListKind(activate(V1)),activate(V1),activate(V2)) r46: isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) r47: isNePal(n____(I,__(P,I))) -> U71(isQid(activate(I)),activate(I),activate(P)) r48: isPal(V) -> U81(isPalListKind(activate(V)),activate(V)) r49: isPal(n__nil()) -> tt() r50: isPalListKind(n__a()) -> tt() r51: isPalListKind(n__e()) -> tt() r52: isPalListKind(n__i()) -> tt() r53: isPalListKind(n__nil()) -> tt() r54: isPalListKind(n__o()) -> tt() r55: isPalListKind(n__u()) -> tt() r56: isPalListKind(n____(V1,V2)) -> U91(isPalListKind(activate(V1)),activate(V2)) r57: isQid(n__a()) -> tt() r58: isQid(n__e()) -> tt() r59: isQid(n__i()) -> tt() r60: isQid(n__o()) -> tt() r61: isQid(n__u()) -> tt() r62: nil() -> n__nil() r63: __(X1,X2) -> n____(X1,X2) r64: a() -> n__a() r65: e() -> n__e() r66: i() -> n__i() r67: o() -> n__o() r68: u() -> n__u() r69: activate(n__nil()) -> nil() r70: activate(n____(X1,X2)) -> __(X1,X2) r71: activate(n__a()) -> a() r72: activate(n__e()) -> e() r73: activate(n__i()) -> i() r74: activate(n__o()) -> o() r75: activate(n__u()) -> u() r76: activate(X) -> X The set of usable rules consists of r1, r2, r3, r38, r39, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76 Take the reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^3 order: lexicographic order interpretations: U82#_A(x1,x2) = ((0,0,0),(0,0,0),(1,0,0)) x1 + ((1,0,0),(1,0,0),(0,1,0)) x2 + (10,9,0) tt_A() = (22,1,1) isNePal#_A(x1) = x1 + (7,5,5) activate_A(x1) = ((1,0,0),(1,0,0),(0,0,0)) x1 + (2,3,3) n_____A(x1,x2) = ((1,0,0),(0,1,0),(1,1,0)) x1 + ((1,0,0),(0,0,0),(1,0,0)) x2 + (0,1,35) ___A(x1,x2) = x1 + x2 + (0,2,1) U71#_A(x1,x2,x3) = ((1,0,0),(0,0,0),(0,1,0)) x1 + x2 + x3 + (0,5,0) isQid_A(x1) = x1 + (0,1,1) U72#_A(x1,x2) = x2 + (19,4,0) isPalListKind_A(x1) = ((1,0,0),(1,1,0),(1,1,1)) x1 + (27,32,0) isPal#_A(x1) = ((1,0,0),(0,1,0),(1,0,1)) x1 + (16,0,1) U81#_A(x1,x2) = x2 + (13,1,0) U92_A(x1) = ((0,0,0),(1,0,0),(1,0,0)) x1 + (23,0,0) nil_A() = (1,1,1) U91_A(x1,x2) = ((0,0,0),(1,0,0),(1,0,0)) x1 + ((1,0,0),(0,1,0),(0,1,1)) x2 + (24,0,0) n__nil_A() = (0,2,2) a_A() = (24,0,0) n__a_A() = (23,1,1) e_A() = (24,0,0) n__e_A() = (23,1,1) i_A() = (24,27,2) n__i_A() = (23,1,1) o_A() = (24,0,0) n__o_A() = (23,1,1) u_A() = (24,0,0) n__u_A() = (23,1,1) 2. lexicographic path order with precedence: precedence: activate > U72# > isQid > U82# > __ > n____ > n__a > n__e > n__o > n__nil > U92 > n__u > i > n__i > o > a > U81# > u > U91 > isPal# > e > isNePal# > U71# > nil > tt > isPalListKind argument filter: pi(U82#) = [] pi(tt) = [] pi(isNePal#) = [] pi(activate) = [] pi(n____) = [] pi(__) = [] pi(U71#) = [] pi(isQid) = [1] pi(U72#) = [] pi(isPalListKind) = 1 pi(isPal#) = [] pi(U81#) = [] pi(U92) = [] pi(nil) = [] pi(U91) = [] pi(n__nil) = [] pi(a) = [] pi(n__a) = [] pi(e) = [] pi(n__e) = [] pi(i) = [] pi(n__i) = [] pi(o) = [] pi(n__o) = [] pi(u) = [] pi(n__u) = [] The next rules are strictly ordered: p1, p2, p3, p4, p5, p6 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U52#(tt(),V1,V2) -> U53#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p2: U53#(tt(),V1,V2) -> U54#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p3: U54#(tt(),V1,V2) -> isNeList#(activate(V1)) p4: isNeList#(n____(V1,V2)) -> U51#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p5: U51#(tt(),V1,V2) -> U52#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p6: isNeList#(n____(V1,V2)) -> U41#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p7: U41#(tt(),V1,V2) -> U42#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p8: U42#(tt(),V1,V2) -> U43#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p9: U43#(tt(),V1,V2) -> U44#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p10: U44#(tt(),V1,V2) -> isList#(activate(V1)) p11: isList#(n____(V1,V2)) -> U21#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p12: U21#(tt(),V1,V2) -> U22#(isPalListKind(activate(V1)),activate(V1),activate(V2)) p13: U22#(tt(),V1,V2) -> U23#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p14: U23#(tt(),V1,V2) -> U24#(isPalListKind(activate(V2)),activate(V1),activate(V2)) p15: U24#(tt(),V1,V2) -> isList#(activate(V1)) p16: isList#(V) -> U11#(isPalListKind(activate(V)),activate(V)) p17: U11#(tt(),V) -> U12#(isPalListKind(activate(V)),activate(V)) p18: U12#(tt(),V) -> isNeList#(activate(V)) p19: U24#(tt(),V1,V2) -> U25#(isList(activate(V1)),activate(V2)) p20: U25#(tt(),V2) -> isList#(activate(V2)) p21: U44#(tt(),V1,V2) -> U45#(isList(activate(V1)),activate(V2)) p22: U45#(tt(),V2) -> isNeList#(activate(V2)) p23: U54#(tt(),V1,V2) -> U55#(isNeList(activate(V1)),activate(V2)) p24: U55#(tt(),V2) -> isList#(activate(V2)) and R consists of: r1: __(__(X,Y),Z) -> __(X,__(Y,Z)) r2: __(X,nil()) -> X r3: __(nil(),X) -> X r4: U11(tt(),V) -> U12(isPalListKind(activate(V)),activate(V)) r5: U12(tt(),V) -> U13(isNeList(activate(V))) r6: U13(tt()) -> tt() r7: U21(tt(),V1,V2) -> U22(isPalListKind(activate(V1)),activate(V1),activate(V2)) r8: U22(tt(),V1,V2) -> U23(isPalListKind(activate(V2)),activate(V1),activate(V2)) r9: U23(tt(),V1,V2) -> U24(isPalListKind(activate(V2)),activate(V1),activate(V2)) r10: U24(tt(),V1,V2) -> U25(isList(activate(V1)),activate(V2)) r11: U25(tt(),V2) -> U26(isList(activate(V2))) r12: U26(tt()) -> tt() r13: U31(tt(),V) -> U32(isPalListKind(activate(V)),activate(V)) r14: U32(tt(),V) -> U33(isQid(activate(V))) r15: U33(tt()) -> tt() r16: U41(tt(),V1,V2) -> U42(isPalListKind(activate(V1)),activate(V1),activate(V2)) r17: U42(tt(),V1,V2) -> U43(isPalListKind(activate(V2)),activate(V1),activate(V2)) r18: U43(tt(),V1,V2) -> U44(isPalListKind(activate(V2)),activate(V1),activate(V2)) r19: U44(tt(),V1,V2) -> U45(isList(activate(V1)),activate(V2)) r20: U45(tt(),V2) -> U46(isNeList(activate(V2))) r21: U46(tt()) -> tt() r22: U51(tt(),V1,V2) -> U52(isPalListKind(activate(V1)),activate(V1),activate(V2)) r23: U52(tt(),V1,V2) -> U53(isPalListKind(activate(V2)),activate(V1),activate(V2)) r24: U53(tt(),V1,V2) -> U54(isPalListKind(activate(V2)),activate(V1),activate(V2)) r25: U54(tt(),V1,V2) -> U55(isNeList(activate(V1)),activate(V2)) r26: U55(tt(),V2) -> U56(isList(activate(V2))) r27: U56(tt()) -> tt() r28: U61(tt(),V) -> U62(isPalListKind(activate(V)),activate(V)) r29: U62(tt(),V) -> U63(isQid(activate(V))) r30: U63(tt()) -> tt() r31: U71(tt(),I,P) -> U72(isPalListKind(activate(I)),activate(P)) r32: U72(tt(),P) -> U73(isPal(activate(P)),activate(P)) r33: U73(tt(),P) -> U74(isPalListKind(activate(P))) r34: U74(tt()) -> tt() r35: U81(tt(),V) -> U82(isPalListKind(activate(V)),activate(V)) r36: U82(tt(),V) -> U83(isNePal(activate(V))) r37: U83(tt()) -> tt() r38: U91(tt(),V2) -> U92(isPalListKind(activate(V2))) r39: U92(tt()) -> tt() r40: isList(V) -> U11(isPalListKind(activate(V)),activate(V)) r41: isList(n__nil()) -> tt() r42: isList(n____(V1,V2)) -> U21(isPalListKind(activate(V1)),activate(V1),activate(V2)) r43: isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) r44: isNeList(n____(V1,V2)) -> U41(isPalListKind(activate(V1)),activate(V1),activate(V2)) r45: isNeList(n____(V1,V2)) -> U51(isPalListKind(activate(V1)),activate(V1),activate(V2)) r46: isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) r47: isNePal(n____(I,__(P,I))) -> U71(isQid(activate(I)),activate(I),activate(P)) r48: isPal(V) -> U81(isPalListKind(activate(V)),activate(V)) r49: isPal(n__nil()) -> tt() r50: isPalListKind(n__a()) -> tt() r51: isPalListKind(n__e()) -> tt() r52: isPalListKind(n__i()) -> tt() r53: isPalListKind(n__nil()) -> tt() r54: isPalListKind(n__o()) -> tt() r55: isPalListKind(n__u()) -> tt() r56: isPalListKind(n____(V1,V2)) -> U91(isPalListKind(activate(V1)),activate(V2)) r57: isQid(n__a()) -> tt() r58: isQid(n__e()) -> tt() r59: isQid(n__i()) -> tt() r60: isQid(n__o()) -> tt() r61: isQid(n__u()) -> tt() r62: nil() -> n__nil() r63: __(X1,X2) -> n____(X1,X2) r64: a() -> n__a() r65: e() -> n__e() r66: i() -> n__i() r67: o() -> n__o() r68: u() -> n__u() r69: activate(n__nil()) -> nil() r70: activate(n____(X1,X2)) -> __(X1,X2) r71: activate(n__a()) -> a() r72: activate(n__e()) -> e() r73: activate(n__i()) -> i() r74: activate(n__o()) -> o() r75: activate(n__u()) -> u() r76: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r38, r39, r40, r41, r42, r43, r44, r45, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76 Take the reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^3 order: lexicographic order interpretations: U52#_A(x1,x2,x3) = ((0,0,0),(1,0,0),(0,1,0)) x1 + ((1,0,0),(0,0,0),(1,0,0)) x2 + ((1,0,0),(0,0,0),(1,1,0)) x3 + (36,1,0) tt_A() = (1,4,0) U53#_A(x1,x2,x3) = ((0,0,0),(1,0,0),(0,0,0)) x1 + ((1,0,0),(0,0,0),(1,0,0)) x2 + ((1,0,0),(0,0,0),(0,1,0)) x3 + (31,0,0) isPalListKind_A(x1) = ((0,0,0),(0,0,0),(1,0,0)) x1 + (2,7,1) activate_A(x1) = ((1,0,0),(1,1,0),(0,0,1)) x1 + (2,2,2) U54#_A(x1,x2,x3) = ((0,0,0),(1,0,0),(0,1,0)) x1 + ((1,0,0),(1,0,0),(0,0,0)) x2 + x3 + (26,9,9) isNeList#_A(x1) = x1 + (0,7,1) n_____A(x1,x2) = ((1,0,0),(1,1,0),(0,0,1)) x1 + x2 + (46,0,0) U51#_A(x1,x2,x3) = x2 + x3 + (41,4,0) U41#_A(x1,x2,x3) = x1 + ((1,0,0),(0,1,0),(0,1,1)) x2 + ((1,0,0),(1,0,0),(1,0,0)) x3 + (28,4,0) U42#_A(x1,x2,x3) = x1 + x2 + x3 + (22,0,0) U43#_A(x1,x2,x3) = x2 + ((1,0,0),(1,0,0),(1,1,0)) x3 + (18,10,5) U44#_A(x1,x2,x3) = x2 + x3 + (13,9,4) isList#_A(x1) = ((1,0,0),(1,1,0),(1,0,0)) x1 + (10,0,0) U21#_A(x1,x2,x3) = x2 + x3 + (51,0,47) U22#_A(x1,x2,x3) = ((0,0,0),(1,0,0),(0,0,0)) x1 + ((1,0,0),(0,0,0),(0,1,0)) x2 + ((1,0,0),(1,0,0),(1,0,0)) x3 + (46,7,44) U23#_A(x1,x2,x3) = x1 + x2 + ((1,0,0),(0,0,0),(0,1,0)) x3 + (39,0,40) U24#_A(x1,x2,x3) = ((0,0,0),(0,0,0),(1,0,0)) x1 + x2 + x3 + (26,3,0) U11#_A(x1,x2) = x1 + ((1,0,0),(1,1,0),(0,1,0)) x2 + (5,9,3) U12#_A(x1,x2) = ((1,0,0),(1,0,0),(0,1,0)) x2 + (3,10,0) U25#_A(x1,x2) = x1 + x2 + (12,1,3) isList_A(x1) = ((1,0,0),(0,0,0),(1,1,0)) x1 + (9,1,1) U45#_A(x1,x2) = x2 + (3,9,4) U55#_A(x1,x2) = ((1,0,0),(0,0,0),(1,0,0)) x1 + x2 + (12,4,1) isNeList_A(x1) = ((1,0,0),(1,1,0),(0,0,1)) x1 + (9,0,4) U26_A(x1) = (2,0,1) U46_A(x1) = (2,3,1) U56_A(x1) = ((0,0,0),(0,0,0),(1,0,0)) x1 + (2,5,0) U25_A(x1,x2) = ((0,0,0),(0,0,0),(1,0,0)) x1 + ((0,0,0),(0,0,0),(1,0,0)) x2 + (3,1,1) U45_A(x1,x2) = x1 + ((1,0,0),(0,1,0),(0,1,0)) x2 + (2,0,1) U55_A(x1,x2) = ((1,0,0),(0,1,0),(0,1,0)) x2 + (3,0,0) U24_A(x1,x2,x3) = ((0,0,0),(1,0,0),(0,1,0)) x2 + (4,0,0) U44_A(x1,x2,x3) = x1 + x2 + x3 + (15,37,9) U54_A(x1,x2,x3) = ((0,0,0),(0,0,0),(1,0,0)) x1 + ((0,0,0),(1,0,0),(0,1,0)) x2 + ((1,0,0),(0,1,0),(0,1,0)) x3 + (6,3,2) U13_A(x1) = ((0,0,0),(1,0,0),(1,0,0)) x1 + (2,0,0) U23_A(x1,x2,x3) = (5,1,1) U33_A(x1) = (2,5,1) U43_A(x1,x2,x3) = ((1,0,0),(0,1,0),(0,1,0)) x2 + x3 + (22,45,0) U53_A(x1,x2,x3) = ((1,0,0),(0,0,0),(0,1,0)) x3 + (9,1,0) isQid_A(x1) = ((1,0,0),(0,1,0),(1,0,0)) x1 + (2,4,0) n__a_A() = (0,0,0) n__e_A() = (0,0,0) n__i_A() = (1,0,1) n__o_A() = (0,0,0) n__u_A() = (1,0,1) U12_A(x1,x2) = x2 + (3,0,0) U22_A(x1,x2,x3) = (6,0,0) U32_A(x1,x2) = x2 + (3,6,0) U42_A(x1,x2,x3) = ((1,0,0),(0,0,0),(0,1,0)) x2 + x3 + (27,46,3) U52_A(x1,x2,x3) = ((1,0,0),(0,0,0),(0,1,0)) x3 + (12,0,0) U92_A(x1) = ((0,0,0),(0,0,0),(1,0,0)) x1 + (1,5,44) ___A(x1,x2) = x1 + x2 + (47,0,0) nil_A() = (1,1,3) U11_A(x1,x2) = ((1,0,0),(0,1,0),(0,1,0)) x2 + (6,3,1) U21_A(x1,x2,x3) = x1 + (6,2,48) U31_A(x1,x2) = ((1,0,0),(0,1,0),(0,1,0)) x2 + (6,0,1) U41_A(x1,x2,x3) = x1 + ((1,0,0),(0,1,0),(0,1,0)) x2 + ((1,0,0),(0,0,0),(0,1,0)) x3 + (31,45,1) U51_A(x1,x2,x3) = x3 + (15,1,0) U91_A(x1,x2) = ((1,0,0),(0,0,0),(0,1,0)) x1 + (0,6,41) n__nil_A() = (0,0,0) a_A() = (1,1,1) e_A() = (1,1,1) i_A() = (2,0,0) o_A() = (1,1,3) u_A() = (2,4,2) 2. lexicographic path order with precedence: precedence: U22# > U44 > U11# > U25 > U13 > U43# > U44# > U25# > n__e > U22 > U12# > isList > e > i > U11 > n__i > isQid > U54 > U23# > U46 > U24 > U23 > n____ > U56 > U45# > U21 > nil > n__a > isPalListKind > U51# > U52# > U53# > U54# > isNeList# > activate > u > isNeList > U12 > n__o > U42 > U32 > U52 > a > U41 > U41# > U91 > U92 > U31 > tt > U51 > n__nil > __ > o > U53 > U55# > U33 > n__u > U45 > U26 > U43 > U42# > U55 > isList# > U24# > U21# argument filter: pi(U52#) = [] pi(tt) = [] pi(U53#) = [] pi(isPalListKind) = [] pi(activate) = [] pi(U54#) = [] pi(isNeList#) = [1] pi(n____) = [1, 2] pi(U51#) = [] pi(U41#) = 2 pi(U42#) = [] pi(U43#) = [] pi(U44#) = [] pi(isList#) = [] pi(U21#) = [] pi(U22#) = [] pi(U23#) = [] pi(U24#) = [] pi(U11#) = [] pi(U12#) = [] pi(U25#) = [] pi(isList) = [] pi(U45#) = [] pi(U55#) = [] pi(isNeList) = 1 pi(U26) = [] pi(U46) = [] pi(U56) = [] pi(U25) = [] pi(U45) = [] pi(U55) = [] pi(U24) = [] pi(U44) = [] pi(U54) = [] pi(U13) = [] pi(U23) = [] pi(U33) = [] pi(U43) = [] pi(U53) = [] pi(isQid) = [] pi(n__a) = [] pi(n__e) = [] pi(n__i) = [] pi(n__o) = [] pi(n__u) = [] pi(U12) = [] pi(U22) = [] pi(U32) = [] pi(U42) = [] pi(U52) = [] pi(U92) = [] pi(__) = 2 pi(nil) = [] pi(U11) = [] pi(U21) = [] pi(U31) = [] pi(U41) = [] pi(U51) = [] pi(U91) = [] pi(n__nil) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] The next rules are strictly ordered: p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isPalListKind#(n____(V1,V2)) -> U91#(isPalListKind(activate(V1)),activate(V2)) p2: U91#(tt(),V2) -> isPalListKind#(activate(V2)) p3: isPalListKind#(n____(V1,V2)) -> isPalListKind#(activate(V1)) and R consists of: r1: __(__(X,Y),Z) -> __(X,__(Y,Z)) r2: __(X,nil()) -> X r3: __(nil(),X) -> X r4: U11(tt(),V) -> U12(isPalListKind(activate(V)),activate(V)) r5: U12(tt(),V) -> U13(isNeList(activate(V))) r6: U13(tt()) -> tt() r7: U21(tt(),V1,V2) -> U22(isPalListKind(activate(V1)),activate(V1),activate(V2)) r8: U22(tt(),V1,V2) -> U23(isPalListKind(activate(V2)),activate(V1),activate(V2)) r9: U23(tt(),V1,V2) -> U24(isPalListKind(activate(V2)),activate(V1),activate(V2)) r10: U24(tt(),V1,V2) -> U25(isList(activate(V1)),activate(V2)) r11: U25(tt(),V2) -> U26(isList(activate(V2))) r12: U26(tt()) -> tt() r13: U31(tt(),V) -> U32(isPalListKind(activate(V)),activate(V)) r14: U32(tt(),V) -> U33(isQid(activate(V))) r15: U33(tt()) -> tt() r16: U41(tt(),V1,V2) -> U42(isPalListKind(activate(V1)),activate(V1),activate(V2)) r17: U42(tt(),V1,V2) -> U43(isPalListKind(activate(V2)),activate(V1),activate(V2)) r18: U43(tt(),V1,V2) -> U44(isPalListKind(activate(V2)),activate(V1),activate(V2)) r19: U44(tt(),V1,V2) -> U45(isList(activate(V1)),activate(V2)) r20: U45(tt(),V2) -> U46(isNeList(activate(V2))) r21: U46(tt()) -> tt() r22: U51(tt(),V1,V2) -> U52(isPalListKind(activate(V1)),activate(V1),activate(V2)) r23: U52(tt(),V1,V2) -> U53(isPalListKind(activate(V2)),activate(V1),activate(V2)) r24: U53(tt(),V1,V2) -> U54(isPalListKind(activate(V2)),activate(V1),activate(V2)) r25: U54(tt(),V1,V2) -> U55(isNeList(activate(V1)),activate(V2)) r26: U55(tt(),V2) -> U56(isList(activate(V2))) r27: U56(tt()) -> tt() r28: U61(tt(),V) -> U62(isPalListKind(activate(V)),activate(V)) r29: U62(tt(),V) -> U63(isQid(activate(V))) r30: U63(tt()) -> tt() r31: U71(tt(),I,P) -> U72(isPalListKind(activate(I)),activate(P)) r32: U72(tt(),P) -> U73(isPal(activate(P)),activate(P)) r33: U73(tt(),P) -> U74(isPalListKind(activate(P))) r34: U74(tt()) -> tt() r35: U81(tt(),V) -> U82(isPalListKind(activate(V)),activate(V)) r36: U82(tt(),V) -> U83(isNePal(activate(V))) r37: U83(tt()) -> tt() r38: U91(tt(),V2) -> U92(isPalListKind(activate(V2))) r39: U92(tt()) -> tt() r40: isList(V) -> U11(isPalListKind(activate(V)),activate(V)) r41: isList(n__nil()) -> tt() r42: isList(n____(V1,V2)) -> U21(isPalListKind(activate(V1)),activate(V1),activate(V2)) r43: isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) r44: isNeList(n____(V1,V2)) -> U41(isPalListKind(activate(V1)),activate(V1),activate(V2)) r45: isNeList(n____(V1,V2)) -> U51(isPalListKind(activate(V1)),activate(V1),activate(V2)) r46: isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) r47: isNePal(n____(I,__(P,I))) -> U71(isQid(activate(I)),activate(I),activate(P)) r48: isPal(V) -> U81(isPalListKind(activate(V)),activate(V)) r49: isPal(n__nil()) -> tt() r50: isPalListKind(n__a()) -> tt() r51: isPalListKind(n__e()) -> tt() r52: isPalListKind(n__i()) -> tt() r53: isPalListKind(n__nil()) -> tt() r54: isPalListKind(n__o()) -> tt() r55: isPalListKind(n__u()) -> tt() r56: isPalListKind(n____(V1,V2)) -> U91(isPalListKind(activate(V1)),activate(V2)) r57: isQid(n__a()) -> tt() r58: isQid(n__e()) -> tt() r59: isQid(n__i()) -> tt() r60: isQid(n__o()) -> tt() r61: isQid(n__u()) -> tt() r62: nil() -> n__nil() r63: __(X1,X2) -> n____(X1,X2) r64: a() -> n__a() r65: e() -> n__e() r66: i() -> n__i() r67: o() -> n__o() r68: u() -> n__u() r69: activate(n__nil()) -> nil() r70: activate(n____(X1,X2)) -> __(X1,X2) r71: activate(n__a()) -> a() r72: activate(n__e()) -> e() r73: activate(n__i()) -> i() r74: activate(n__o()) -> o() r75: activate(n__u()) -> u() r76: activate(X) -> X The set of usable rules consists of r1, r2, r3, r38, r39, r50, r51, r52, r53, r54, r55, r56, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76 Take the reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^3 order: lexicographic order interpretations: isPalListKind#_A(x1) = x1 n_____A(x1,x2) = x1 + x2 + (6,5,5) U91#_A(x1,x2) = x2 + (3,1,1) isPalListKind_A(x1) = ((0,0,0),(0,0,0),(1,0,0)) x1 + (4,2,0) activate_A(x1) = x1 + (2,3,3) tt_A() = (1,1,2) U92_A(x1) = (2,4,8) ___A(x1,x2) = ((1,0,0),(1,1,0),(1,0,0)) x1 + ((1,0,0),(0,1,0),(1,0,1)) x2 + (7,4,4) nil_A() = (4,1,2) U91_A(x1,x2) = (3,3,7) n__nil_A() = (3,1,2) a_A() = (2,0,4) n__a_A() = (1,1,5) e_A() = (4,4,4) n__e_A() = (3,1,1) i_A() = (4,0,0) n__i_A() = (3,1,1) o_A() = (4,2,2) n__o_A() = (3,1,1) u_A() = (4,4,4) n__u_A() = (3,5,1) 2. lexicographic path order with precedence: precedence: U91# > n__o > activate > n__u > nil > o > isPalListKind > tt > n__i > n__a > u > n____ > U91 > n__e > e > U92 > n__nil > __ > i > a > isPalListKind# argument filter: pi(isPalListKind#) = [] pi(n____) = [2] pi(U91#) = [] pi(isPalListKind) = [] pi(activate) = [] pi(tt) = [] pi(U92) = [] pi(__) = 2 pi(nil) = [] pi(U91) = [] pi(n__nil) = [] pi(a) = [] pi(n__a) = [] pi(e) = [] pi(n__e) = [] pi(i) = [] pi(n__i) = [] pi(o) = [] pi(n__o) = [] pi(u) = [] pi(n__u) = [] The next rules are strictly ordered: p1, p2, p3 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: __#(__(X,Y),Z) -> __#(X,__(Y,Z)) p2: __#(__(X,Y),Z) -> __#(Y,Z) and R consists of: r1: __(__(X,Y),Z) -> __(X,__(Y,Z)) r2: __(X,nil()) -> X r3: __(nil(),X) -> X r4: U11(tt(),V) -> U12(isPalListKind(activate(V)),activate(V)) r5: U12(tt(),V) -> U13(isNeList(activate(V))) r6: U13(tt()) -> tt() r7: U21(tt(),V1,V2) -> U22(isPalListKind(activate(V1)),activate(V1),activate(V2)) r8: U22(tt(),V1,V2) -> U23(isPalListKind(activate(V2)),activate(V1),activate(V2)) r9: U23(tt(),V1,V2) -> U24(isPalListKind(activate(V2)),activate(V1),activate(V2)) r10: U24(tt(),V1,V2) -> U25(isList(activate(V1)),activate(V2)) r11: U25(tt(),V2) -> U26(isList(activate(V2))) r12: U26(tt()) -> tt() r13: U31(tt(),V) -> U32(isPalListKind(activate(V)),activate(V)) r14: U32(tt(),V) -> U33(isQid(activate(V))) r15: U33(tt()) -> tt() r16: U41(tt(),V1,V2) -> U42(isPalListKind(activate(V1)),activate(V1),activate(V2)) r17: U42(tt(),V1,V2) -> U43(isPalListKind(activate(V2)),activate(V1),activate(V2)) r18: U43(tt(),V1,V2) -> U44(isPalListKind(activate(V2)),activate(V1),activate(V2)) r19: U44(tt(),V1,V2) -> U45(isList(activate(V1)),activate(V2)) r20: U45(tt(),V2) -> U46(isNeList(activate(V2))) r21: U46(tt()) -> tt() r22: U51(tt(),V1,V2) -> U52(isPalListKind(activate(V1)),activate(V1),activate(V2)) r23: U52(tt(),V1,V2) -> U53(isPalListKind(activate(V2)),activate(V1),activate(V2)) r24: U53(tt(),V1,V2) -> U54(isPalListKind(activate(V2)),activate(V1),activate(V2)) r25: U54(tt(),V1,V2) -> U55(isNeList(activate(V1)),activate(V2)) r26: U55(tt(),V2) -> U56(isList(activate(V2))) r27: U56(tt()) -> tt() r28: U61(tt(),V) -> U62(isPalListKind(activate(V)),activate(V)) r29: U62(tt(),V) -> U63(isQid(activate(V))) r30: U63(tt()) -> tt() r31: U71(tt(),I,P) -> U72(isPalListKind(activate(I)),activate(P)) r32: U72(tt(),P) -> U73(isPal(activate(P)),activate(P)) r33: U73(tt(),P) -> U74(isPalListKind(activate(P))) r34: U74(tt()) -> tt() r35: U81(tt(),V) -> U82(isPalListKind(activate(V)),activate(V)) r36: U82(tt(),V) -> U83(isNePal(activate(V))) r37: U83(tt()) -> tt() r38: U91(tt(),V2) -> U92(isPalListKind(activate(V2))) r39: U92(tt()) -> tt() r40: isList(V) -> U11(isPalListKind(activate(V)),activate(V)) r41: isList(n__nil()) -> tt() r42: isList(n____(V1,V2)) -> U21(isPalListKind(activate(V1)),activate(V1),activate(V2)) r43: isNeList(V) -> U31(isPalListKind(activate(V)),activate(V)) r44: isNeList(n____(V1,V2)) -> U41(isPalListKind(activate(V1)),activate(V1),activate(V2)) r45: isNeList(n____(V1,V2)) -> U51(isPalListKind(activate(V1)),activate(V1),activate(V2)) r46: isNePal(V) -> U61(isPalListKind(activate(V)),activate(V)) r47: isNePal(n____(I,__(P,I))) -> U71(isQid(activate(I)),activate(I),activate(P)) r48: isPal(V) -> U81(isPalListKind(activate(V)),activate(V)) r49: isPal(n__nil()) -> tt() r50: isPalListKind(n__a()) -> tt() r51: isPalListKind(n__e()) -> tt() r52: isPalListKind(n__i()) -> tt() r53: isPalListKind(n__nil()) -> tt() r54: isPalListKind(n__o()) -> tt() r55: isPalListKind(n__u()) -> tt() r56: isPalListKind(n____(V1,V2)) -> U91(isPalListKind(activate(V1)),activate(V2)) r57: isQid(n__a()) -> tt() r58: isQid(n__e()) -> tt() r59: isQid(n__i()) -> tt() r60: isQid(n__o()) -> tt() r61: isQid(n__u()) -> tt() r62: nil() -> n__nil() r63: __(X1,X2) -> n____(X1,X2) r64: a() -> n__a() r65: e() -> n__e() r66: i() -> n__i() r67: o() -> n__o() r68: u() -> n__u() r69: activate(n__nil()) -> nil() r70: activate(n____(X1,X2)) -> __(X1,X2) r71: activate(n__a()) -> a() r72: activate(n__e()) -> e() r73: activate(n__i()) -> i() r74: activate(n__o()) -> o() r75: activate(n__u()) -> u() r76: activate(X) -> X The set of usable rules consists of r1, r2, r3, r63 Take the reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^3 order: lexicographic order interpretations: __#_A(x1,x2) = ((1,0,0),(1,0,0),(1,0,0)) x1 ___A(x1,x2) = x1 + x2 + (1,1,1) nil_A() = (1,1,1) n_____A(x1,x2) = (0,2,2) 2. lexicographic path order with precedence: precedence: n____ > __# > __ > nil argument filter: pi(__#) = [] pi(__) = [] pi(nil) = [] pi(n____) = [] The next rules are strictly ordered: p1, p2 We remove them from the problem. Then no dependency pair remains.