YES We show the termination of the TRS R: 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()) -> tt() a__U21(tt(),V2) -> a__U22(a__isList(V2)) a__U22(tt()) -> tt() a__U31(tt()) -> tt() a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) a__U42(tt()) -> tt() a__U51(tt(),V2) -> a__U52(a__isList(V2)) a__U52(tt()) -> tt() a__U61(tt()) -> tt() a__U71(tt(),P) -> a__U72(a__isPal(P)) a__U72(tt()) -> tt() a__U81(tt()) -> tt() a__isList(V) -> a__U11(a__isNeList(V)) a__isList(nil()) -> tt() a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) a__isNeList(V) -> a__U31(a__isQid(V)) a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) a__isNePal(V) -> a__U61(a__isQid(V)) a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) a__isPal(V) -> a__U81(a__isNePal(V)) a__isPal(nil()) -> tt() 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(X)) -> a__U11(mark(X)) mark(U21(X1,X2)) -> a__U21(mark(X1),X2) mark(U22(X)) -> a__U22(mark(X)) mark(isList(X)) -> a__isList(X) mark(U31(X)) -> a__U31(mark(X)) mark(U41(X1,X2)) -> a__U41(mark(X1),X2) mark(U42(X)) -> a__U42(mark(X)) mark(isNeList(X)) -> a__isNeList(X) mark(U51(X1,X2)) -> a__U51(mark(X1),X2) mark(U52(X)) -> a__U52(mark(X)) mark(U61(X)) -> a__U61(mark(X)) mark(U71(X1,X2)) -> a__U71(mark(X1),X2) mark(U72(X)) -> a__U72(mark(X)) mark(isPal(X)) -> a__isPal(X) mark(U81(X)) -> a__U81(mark(X)) mark(isQid(X)) -> a__isQid(X) mark(isNePal(X)) -> a__isNePal(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(X) -> U11(X) a__U21(X1,X2) -> U21(X1,X2) a__U22(X) -> U22(X) a__isList(X) -> isList(X) a__U31(X) -> U31(X) a__U41(X1,X2) -> U41(X1,X2) a__U42(X) -> U42(X) a__isNeList(X) -> isNeList(X) a__U51(X1,X2) -> U51(X1,X2) a__U52(X) -> U52(X) a__U61(X) -> U61(X) a__U71(X1,X2) -> U71(X1,X2) a__U72(X) -> U72(X) a__isPal(X) -> isPal(X) a__U81(X) -> U81(X) a__isQid(X) -> isQid(X) a__isNePal(X) -> isNePal(X) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> mark#(X) p3: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p4: a____#(__(X,Y),Z) -> mark#(Y) p5: a____#(__(X,Y),Z) -> mark#(Z) p6: a____#(X,nil()) -> mark#(X) p7: a____#(nil(),X) -> mark#(X) p8: a__U21#(tt(),V2) -> a__U22#(a__isList(V2)) p9: a__U21#(tt(),V2) -> a__isList#(V2) p10: a__U41#(tt(),V2) -> a__U42#(a__isNeList(V2)) p11: a__U41#(tt(),V2) -> a__isNeList#(V2) p12: a__U51#(tt(),V2) -> a__U52#(a__isList(V2)) p13: a__U51#(tt(),V2) -> a__isList#(V2) p14: a__U71#(tt(),P) -> a__U72#(a__isPal(P)) p15: a__U71#(tt(),P) -> a__isPal#(P) p16: a__isList#(V) -> a__U11#(a__isNeList(V)) p17: a__isList#(V) -> a__isNeList#(V) p18: a__isList#(__(V1,V2)) -> a__U21#(a__isList(V1),V2) p19: a__isList#(__(V1,V2)) -> a__isList#(V1) p20: a__isNeList#(V) -> a__U31#(a__isQid(V)) p21: a__isNeList#(V) -> a__isQid#(V) p22: a__isNeList#(__(V1,V2)) -> a__U41#(a__isList(V1),V2) p23: a__isNeList#(__(V1,V2)) -> a__isList#(V1) p24: a__isNeList#(__(V1,V2)) -> a__U51#(a__isNeList(V1),V2) p25: a__isNeList#(__(V1,V2)) -> a__isNeList#(V1) p26: a__isNePal#(V) -> a__U61#(a__isQid(V)) p27: a__isNePal#(V) -> a__isQid#(V) p28: a__isNePal#(__(I,__(P,I))) -> a__U71#(a__isQid(I),P) p29: a__isNePal#(__(I,__(P,I))) -> a__isQid#(I) p30: a__isPal#(V) -> a__U81#(a__isNePal(V)) p31: a__isPal#(V) -> a__isNePal#(V) p32: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p33: mark#(__(X1,X2)) -> mark#(X1) p34: mark#(__(X1,X2)) -> mark#(X2) p35: mark#(U11(X)) -> a__U11#(mark(X)) p36: mark#(U11(X)) -> mark#(X) p37: mark#(U21(X1,X2)) -> a__U21#(mark(X1),X2) p38: mark#(U21(X1,X2)) -> mark#(X1) p39: mark#(U22(X)) -> a__U22#(mark(X)) p40: mark#(U22(X)) -> mark#(X) p41: mark#(isList(X)) -> a__isList#(X) p42: mark#(U31(X)) -> a__U31#(mark(X)) p43: mark#(U31(X)) -> mark#(X) p44: mark#(U41(X1,X2)) -> a__U41#(mark(X1),X2) p45: mark#(U41(X1,X2)) -> mark#(X1) p46: mark#(U42(X)) -> a__U42#(mark(X)) p47: mark#(U42(X)) -> mark#(X) p48: mark#(isNeList(X)) -> a__isNeList#(X) p49: mark#(U51(X1,X2)) -> a__U51#(mark(X1),X2) p50: mark#(U51(X1,X2)) -> mark#(X1) p51: mark#(U52(X)) -> a__U52#(mark(X)) p52: mark#(U52(X)) -> mark#(X) p53: mark#(U61(X)) -> a__U61#(mark(X)) p54: mark#(U61(X)) -> mark#(X) p55: mark#(U71(X1,X2)) -> a__U71#(mark(X1),X2) p56: mark#(U71(X1,X2)) -> mark#(X1) p57: mark#(U72(X)) -> a__U72#(mark(X)) p58: mark#(U72(X)) -> mark#(X) p59: mark#(isPal(X)) -> a__isPal#(X) p60: mark#(U81(X)) -> a__U81#(mark(X)) p61: mark#(U81(X)) -> mark#(X) p62: mark#(isQid(X)) -> a__isQid#(X) p63: mark#(isNePal(X)) -> a__isNePal#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p32, p33, p34, p36, p38, p40, p43, p45, p47, p50, p52, p54, p56, p58, p61} {p9, p11, p13, p17, p18, p19, p22, p23, p24, p25} {p15, p28, p31} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(nil(),X) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U42(X)) -> mark#(X) p10: mark#(U41(X1,X2)) -> mark#(X1) p11: mark#(U31(X)) -> mark#(X) p12: mark#(U22(X)) -> mark#(X) p13: mark#(U21(X1,X2)) -> mark#(X1) p14: mark#(U11(X)) -> mark#(X) p15: mark#(__(X1,X2)) -> mark#(X2) p16: mark#(__(X1,X2)) -> mark#(X1) p17: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p18: a____#(X,nil()) -> mark#(X) p19: a____#(__(X,Y),Z) -> mark#(Z) p20: a____#(__(X,Y),Z) -> mark#(Y) p21: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p22: a____#(__(X,Y),Z) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((0,0),(1,0)) x1 + ((0,0),(1,0)) x2 + (3,10) ___A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,12) mark_A(x1) = x1 + (0,8) a_____A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,12) nil_A() = (2,0) mark#_A(x1) = ((0,0),(1,0)) x1 + (3,10) U81_A(x1) = ((1,0),(0,0)) x1 + (4,0) U72_A(x1) = ((1,0),(0,0)) x1 + (2,0) U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (1,2) U61_A(x1) = ((1,0),(0,0)) x1 + (1,10) U52_A(x1) = x1 U51_A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (0,9) U42_A(x1) = ((1,0),(0,0)) x1 + (0,7) U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,13) U31_A(x1) = ((1,0),(0,0)) x1 + (1,1) U22_A(x1) = ((1,0),(0,0)) x1 + (0,7) U21_A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 U11_A(x1) = ((1,0),(0,0)) x1 + (0,7) a__U11_A(x1) = ((1,0),(0,0)) x1 + (0,12) tt_A() = (9,0) a__U21_A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 a__U22_A(x1) = ((1,0),(0,0)) x1 + (0,8) a__isList_A(x1) = ((1,0),(1,0)) x1 + (9,13) a__U31_A(x1) = ((1,0),(0,0)) x1 + (1,1) a__U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,13) a__U42_A(x1) = ((1,0),(0,0)) x1 + (0,8) a__isNeList_A(x1) = ((1,0),(1,1)) x1 + (9,7) a__U51_A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (0,9) a__U52_A(x1) = x1 a__U61_A(x1) = ((1,0),(0,0)) x1 + (1,11) a__U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (1,2) a__U72_A(x1) = ((1,0),(0,0)) x1 + (2,1) a__isPal_A(x1) = ((1,0),(1,0)) x1 + (8,9) a__U81_A(x1) = ((1,0),(0,0)) x1 + (4,8) a__isQid_A(x1) = ((1,0),(0,0)) x1 + (1,2) a__isNePal_A(x1) = ((1,0),(1,0)) x1 + (3,5) a_A() = (10,1) e_A() = (10,1) i_A() = (10,1) o_A() = (9,0) u_A() = (9,1) isList_A(x1) = ((1,0),(1,0)) x1 + (9,13) isNeList_A(x1) = ((1,0),(1,1)) x1 + (9,0) isPal_A(x1) = ((1,0),(1,0)) x1 + (8,2) isQid_A(x1) = ((1,0),(0,0)) x1 + (1,1) isNePal_A(x1) = ((1,0),(1,0)) x1 + (3,1) precedence: U11 > nil > a__isPal = isPal > U51 = a__U51 > U22 = U21 = a__U21 = a__U22 = a__isList = isList > mark = a__isNeList > a____ > a__U31 > a__isNePal > U31 > a__isQid > a > U41 = a__U41 > isNeList > isNePal > u > a__U52 > U42 = a__U42 > i > o > a____# = __ = mark# = U81 = U72 = U71 = U61 = U52 = a__U11 = tt = a__U61 = a__U71 = a__U72 = a__U81 = e = isQid partial status: pi(a____#) = [] pi(__) = [] pi(mark) = [1] pi(a____) = [] pi(nil) = [] pi(mark#) = [] pi(U81) = [] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [] pi(U51) = [] pi(U42) = [] pi(U41) = [] pi(U31) = [] pi(U22) = [] pi(U21) = [] pi(U11) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p11 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(nil(),X) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U42(X)) -> mark#(X) p10: mark#(U41(X1,X2)) -> mark#(X1) p11: mark#(U22(X)) -> mark#(X) p12: mark#(U21(X1,X2)) -> mark#(X1) p13: mark#(U11(X)) -> mark#(X) p14: mark#(__(X1,X2)) -> mark#(X2) p15: mark#(__(X1,X2)) -> mark#(X1) p16: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p17: a____#(X,nil()) -> mark#(X) p18: a____#(__(X,Y),Z) -> mark#(Z) p19: a____#(__(X,Y),Z) -> mark#(Y) p20: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p21: a____#(__(X,Y),Z) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> mark#(X) p3: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p4: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p5: a____#(__(X,Y),Z) -> mark#(Y) p6: mark#(__(X1,X2)) -> mark#(X1) p7: mark#(__(X1,X2)) -> mark#(X2) p8: mark#(U11(X)) -> mark#(X) p9: mark#(U21(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U41(X1,X2)) -> mark#(X1) p12: mark#(U42(X)) -> mark#(X) p13: mark#(U51(X1,X2)) -> mark#(X1) p14: mark#(U52(X)) -> mark#(X) p15: mark#(U61(X)) -> mark#(X) p16: mark#(U71(X1,X2)) -> mark#(X1) p17: mark#(U72(X)) -> mark#(X) p18: mark#(U81(X)) -> mark#(X) p19: a____#(__(X,Y),Z) -> mark#(Z) p20: a____#(X,nil()) -> mark#(X) p21: a____#(nil(),X) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((0,0),(1,0)) x1 + ((0,0),(1,0)) x2 ___A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (0,8) mark_A(x1) = x1 + (0,10) a_____A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (0,9) mark#_A(x1) = ((0,0),(1,0)) x1 U11_A(x1) = ((1,0),(1,0)) x1 + (0,1) U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 U22_A(x1) = ((1,0),(0,0)) x1 + (5,0) U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(1,0)) x2 + (0,4) U42_A(x1) = ((1,0),(0,0)) x1 + (1,3) U51_A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (0,5) U52_A(x1) = ((1,0),(1,0)) x1 + (1,1) U61_A(x1) = ((1,0),(0,0)) x1 + (1,3) U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (3,0) U72_A(x1) = ((1,0),(0,0)) x1 + (1,1) U81_A(x1) = ((1,0),(0,0)) x1 + (1,1) nil_A() = (7,0) a__U11_A(x1) = ((1,0),(1,0)) x1 + (0,2) tt_A() = (10,11) a__U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,9) a__U22_A(x1) = ((1,0),(0,0)) x1 + (5,8) a__isList_A(x1) = ((1,0),(1,1)) x1 + (4,7) a__U31_A(x1) = ((1,0),(1,0)) x1 + (1,3) a__U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(1,0)) x2 + (0,13) a__U42_A(x1) = ((1,0),(0,0)) x1 + (1,12) a__isNeList_A(x1) = ((1,0),(1,1)) x1 + (4,6) a__U51_A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (0,5) a__U52_A(x1) = ((1,0),(1,0)) x1 + (1,8) a__U61_A(x1) = ((1,0),(0,0)) x1 + (1,12) a__U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (3,7) a__U72_A(x1) = ((1,0),(0,0)) x1 + (1,11) a__isPal_A(x1) = ((1,0),(1,0)) x1 + (11,3) a__U81_A(x1) = ((1,0),(0,0)) x1 + (1,2) a__isQid_A(x1) = x1 + (2,7) a__isNePal_A(x1) = ((1,0),(0,0)) x1 + (6,13) a_A() = (11,12) e_A() = (9,5) i_A() = (9,5) o_A() = (9,12) u_A() = (9,12) isList_A(x1) = ((1,0),(1,1)) x1 + (4,1) U31_A(x1) = ((1,0),(1,0)) x1 + (1,0) isNeList_A(x1) = ((1,0),(1,1)) x1 + (4,1) isPal_A(x1) = ((1,0),(1,0)) x1 + (11,1) isQid_A(x1) = x1 + (2,1) isNePal_A(x1) = ((1,0),(0,0)) x1 + (6,4) precedence: mark = a____ = a__isPal = a__isNePal = isPal > U81 = a__U81 > a__isQid = isQid > U52 = a__U51 = a__U52 > U71 = U72 = a__U71 = a__U72 > a__U31 = a__isNeList = isNeList > a__isList > isList > u > a__U11 > U31 > U41 = a__U41 > isNePal > a > nil > i > o > U61 = a__U61 > __ > U51 > a__U21 = a__U22 > U21 > U22 > U11 > U42 = tt = a__U42 > e > a____# = mark# partial status: pi(a____#) = [] pi(__) = [] pi(mark) = [] pi(a____) = [] pi(mark#) = [] pi(U11) = [] pi(U21) = [] pi(U22) = [] pi(U41) = [] pi(U42) = [] pi(U51) = [] pi(U52) = [] pi(U61) = [] pi(U71) = [] pi(U72) = [] pi(U81) = [] pi(nil) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p21 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> mark#(X) p3: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p4: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p5: a____#(__(X,Y),Z) -> mark#(Y) p6: mark#(__(X1,X2)) -> mark#(X1) p7: mark#(__(X1,X2)) -> mark#(X2) p8: mark#(U11(X)) -> mark#(X) p9: mark#(U21(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U41(X1,X2)) -> mark#(X1) p12: mark#(U42(X)) -> mark#(X) p13: mark#(U51(X1,X2)) -> mark#(X1) p14: mark#(U52(X)) -> mark#(X) p15: mark#(U61(X)) -> mark#(X) p16: mark#(U71(X1,X2)) -> mark#(X1) p17: mark#(U72(X)) -> mark#(X) p18: mark#(U81(X)) -> mark#(X) p19: a____#(__(X,Y),Z) -> mark#(Z) p20: a____#(X,nil()) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(X,nil()) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U42(X)) -> mark#(X) p10: mark#(U41(X1,X2)) -> mark#(X1) p11: mark#(U22(X)) -> mark#(X) p12: mark#(U21(X1,X2)) -> mark#(X1) p13: mark#(U11(X)) -> mark#(X) p14: mark#(__(X1,X2)) -> mark#(X2) p15: mark#(__(X1,X2)) -> mark#(X1) p16: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p17: a____#(__(X,Y),Z) -> mark#(Z) p18: a____#(__(X,Y),Z) -> mark#(Y) p19: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p20: a____#(__(X,Y),Z) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (2,3) ___A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (21,14) mark_A(x1) = ((1,0),(1,1)) x1 + (0,7) a_____A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (21,15) nil_A() = (3,1) mark#_A(x1) = ((1,0),(1,1)) x1 + (4,2) U81_A(x1) = ((1,0),(0,0)) x1 + (5,1) U72_A(x1) = x1 + (5,1) U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (18,1) U61_A(x1) = ((1,0),(1,1)) x1 + (5,1) U52_A(x1) = ((1,0),(0,0)) x1 + (5,1) U51_A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (18,3) U42_A(x1) = x1 + (5,3) U41_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (11,1) U22_A(x1) = ((1,0),(0,0)) x1 + (5,3) U21_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (14,1) U11_A(x1) = x1 + (5,3) a__U11_A(x1) = x1 + (5,4) tt_A() = (2,5) a__U21_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (14,2) a__U22_A(x1) = ((1,0),(0,0)) x1 + (5,4) a__isList_A(x1) = ((1,0),(1,0)) x1 + (10,15) a__U31_A(x1) = (3,7) a__U41_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (11,5) a__U42_A(x1) = x1 + (5,4) a__isNeList_A(x1) = ((1,0),(1,1)) x1 + (4,5) a__U51_A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (18,4) a__U52_A(x1) = ((1,0),(0,0)) x1 + (5,12) a__U61_A(x1) = ((1,0),(1,1)) x1 + (5,2) a__U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (18,14) a__U72_A(x1) = x1 + (5,2) a__isPal_A(x1) = ((1,0),(0,0)) x1 + (14,7) a__U81_A(x1) = ((1,0),(0,0)) x1 + (5,6) a__isQid_A(x1) = ((1,0),(0,0)) x1 + (2,5) a__isNePal_A(x1) = ((1,0),(0,0)) x1 + (8,15) a_A() = (2,5) e_A() = (3,5) i_A() = (1,5) o_A() = (2,5) u_A() = (1,5) isList_A(x1) = ((1,0),(0,0)) x1 + (10,1) U31_A(x1) = (3,6) isNeList_A(x1) = x1 + (4,1) isPal_A(x1) = ((1,0),(0,0)) x1 + (14,1) isQid_A(x1) = ((1,0),(0,0)) x1 + (2,0) isNePal_A(x1) = ((1,0),(0,0)) x1 + (8,1) precedence: isNePal > a____ > __ > U11 > isNeList > U21 > U22 = a__U22 > a__isQid > isQid > a__U21 > a__U51 > mark = nil = U81 = U51 = a__isNeList = a__U71 = a__isPal = a__U81 = a__isNePal > a____# = isPal > u > a__U31 = U31 > U52 = a__U52 > U42 = a__U41 = a__U42 > o > a__isList > a__U11 > mark# > isList > U41 > a__U61 > U61 > a > e > i > U72 = tt = a__U72 > U71 partial status: pi(a____#) = [] pi(__) = [] pi(mark) = [1] pi(a____) = [1] pi(nil) = [] pi(mark#) = [1] pi(U81) = [] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [] pi(U51) = [] pi(U42) = [] pi(U41) = [1] pi(U22) = [] pi(U21) = [1] pi(U11) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [1] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p17 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(X,nil()) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U42(X)) -> mark#(X) p10: mark#(U41(X1,X2)) -> mark#(X1) p11: mark#(U22(X)) -> mark#(X) p12: mark#(U21(X1,X2)) -> mark#(X1) p13: mark#(U11(X)) -> mark#(X) p14: mark#(__(X1,X2)) -> mark#(X2) p15: mark#(__(X1,X2)) -> mark#(X1) p16: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p17: a____#(__(X,Y),Z) -> mark#(Y) p18: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p19: a____#(__(X,Y),Z) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> mark#(X) p3: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p4: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p5: a____#(__(X,Y),Z) -> mark#(Y) p6: mark#(__(X1,X2)) -> mark#(X1) p7: mark#(__(X1,X2)) -> mark#(X2) p8: mark#(U11(X)) -> mark#(X) p9: mark#(U21(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U41(X1,X2)) -> mark#(X1) p12: mark#(U42(X)) -> mark#(X) p13: mark#(U51(X1,X2)) -> mark#(X1) p14: mark#(U52(X)) -> mark#(X) p15: mark#(U61(X)) -> mark#(X) p16: mark#(U71(X1,X2)) -> mark#(X1) p17: mark#(U72(X)) -> mark#(X) p18: mark#(U81(X)) -> mark#(X) p19: a____#(X,nil()) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((1,0),(0,0)) x1 + (2,2) ___A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,6) mark_A(x1) = ((1,0),(0,0)) x1 + (0,9) a_____A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,7) mark#_A(x1) = ((1,0),(0,0)) x1 + (2,2) U11_A(x1) = ((1,0),(0,0)) x1 + (0,3) U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,2) U22_A(x1) = ((1,0),(0,0)) x1 + (1,0) U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,1) U42_A(x1) = ((1,0),(0,0)) x1 + (1,3) U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 U52_A(x1) = x1 + (1,0) U61_A(x1) = ((1,0),(0,0)) x1 + (1,1) U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (3,0) U72_A(x1) = ((1,0),(0,0)) x1 + (3,0) U81_A(x1) = ((1,0),(0,0)) x1 + (1,3) nil_A() = (1,1) a__U11_A(x1) = ((1,0),(0,0)) x1 + (0,7) tt_A() = (7,2) a__U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,7) a__U22_A(x1) = ((1,0),(0,0)) x1 + (1,6) a__isList_A(x1) = ((1,0),(0,0)) x1 + (6,8) a__U31_A(x1) = ((1,0),(0,0)) x1 + (1,8) a__U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,5) a__U42_A(x1) = ((1,0),(0,0)) x1 + (1,4) a__isNeList_A(x1) = ((1,0),(0,0)) x1 + (6,9) a__U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (0,9) a__U52_A(x1) = x1 + (1,0) a__U61_A(x1) = ((1,0),(0,0)) x1 + (1,3) a__U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (3,7) a__U72_A(x1) = ((1,0),(0,0)) x1 + (3,3) a__isPal_A(x1) = ((1,0),(0,0)) x1 + (6,5) a__U81_A(x1) = ((1,0),(0,0)) x1 + (1,4) a__isQid_A(x1) = ((1,0),(0,0)) x1 + (0,5) a__isNePal_A(x1) = ((1,0),(0,0)) x1 + (4,8) a_A() = (7,3) e_A() = (8,3) i_A() = (8,3) o_A() = (8,0) u_A() = (8,0) isList_A(x1) = ((1,0),(0,0)) x1 + (6,0) U31_A(x1) = ((1,0),(0,0)) x1 + (1,0) isNeList_A(x1) = ((1,0),(0,0)) x1 + (6,0) isPal_A(x1) = ((1,0),(0,0)) x1 + (6,0) isQid_A(x1) = ((1,0),(0,0)) x1 + (0,1) isNePal_A(x1) = ((1,0),(0,0)) x1 + (4,0) precedence: a__isQid > isQid > isNePal > mark = a____ = U52 = a__U52 > a__isNePal > a__isPal > isPal > a__U31 = a__isNeList = isNeList > __ > a__U41 > U41 = a__U51 > a__U61 > U31 > U71 = U72 = a__U71 = a__U72 > nil = a = isList > U61 > a__U11 = a__U21 = a__U22 = a__isList > a____# = mark# > U22 > U42 = a__U42 > U11 > e > U21 = U51 = U81 = tt = a__U81 = i = o = u partial status: pi(a____#) = [] pi(__) = [] pi(mark) = [] pi(a____) = [] pi(mark#) = [] pi(U11) = [] pi(U21) = [] pi(U22) = [] pi(U41) = [] pi(U42) = [] pi(U51) = [] pi(U52) = [] pi(U61) = [] pi(U71) = [] pi(U72) = [] pi(U81) = [] pi(nil) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p12 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> mark#(X) p3: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p4: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p5: a____#(__(X,Y),Z) -> mark#(Y) p6: mark#(__(X1,X2)) -> mark#(X1) p7: mark#(__(X1,X2)) -> mark#(X2) p8: mark#(U11(X)) -> mark#(X) p9: mark#(U21(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U41(X1,X2)) -> mark#(X1) p12: mark#(U51(X1,X2)) -> mark#(X1) p13: mark#(U52(X)) -> mark#(X) p14: mark#(U61(X)) -> mark#(X) p15: mark#(U71(X1,X2)) -> mark#(X1) p16: mark#(U72(X)) -> mark#(X) p17: mark#(U81(X)) -> mark#(X) p18: a____#(X,nil()) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(X,nil()) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U41(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U21(X1,X2)) -> mark#(X1) p12: mark#(U11(X)) -> mark#(X) p13: mark#(__(X1,X2)) -> mark#(X2) p14: mark#(__(X1,X2)) -> mark#(X1) p15: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p16: a____#(__(X,Y),Z) -> mark#(Y) p17: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p18: a____#(__(X,Y),Z) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((1,0),(1,1)) x1 + (51,1) ___A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(0,0)) x2 + (91,73) mark_A(x1) = ((1,0),(1,0)) x1 a_____A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(0,0)) x2 + (91,74) nil_A() = (1,0) mark#_A(x1) = ((1,0),(0,0)) x1 + (50,2) U81_A(x1) = x1 + (2,0) U72_A(x1) = ((1,0),(0,0)) x1 + (2,0) U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (16,1) U61_A(x1) = ((1,0),(0,0)) x1 + (2,0) U52_A(x1) = ((1,0),(0,0)) x1 + (23,23) U51_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (49,22) U41_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (51,0) U22_A(x1) = ((1,0),(0,0)) x1 + (49,1) U21_A(x1,x2) = x1 + ((1,0),(1,0)) x2 + (74,1) U11_A(x1) = x1 + (19,0) a__U11_A(x1) = x1 + (19,19) tt_A() = (67,0) a__U21_A(x1,x2) = x1 + ((1,0),(1,0)) x2 + (74,73) a__U22_A(x1) = ((1,0),(0,0)) x1 + (49,2) a__isList_A(x1) = ((1,0),(1,0)) x1 + (92,72) a__U31_A(x1) = (68,2) a__U41_A(x1,x2) = x1 + ((1,0),(1,0)) x2 + (51,51) a__U42_A(x1) = (67,1) a__isNeList_A(x1) = ((1,0),(1,0)) x1 + (73,52) a__U51_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (49,22) a__U52_A(x1) = ((1,0),(0,0)) x1 + (23,23) a__U61_A(x1) = ((1,0),(0,0)) x1 + (2,1) a__U71_A(x1,x2) = x1 + ((1,0),(1,0)) x2 + (16,2) a__U72_A(x1) = ((1,0),(0,0)) x1 + (2,1) a__isPal_A(x1) = ((1,0),(0,0)) x1 + (80,1) a__U81_A(x1) = x1 + (2,1) a__isQid_A(x1) = (74,74) a__isNePal_A(x1) = ((1,0),(1,0)) x1 + (77,2) a_A() = (1,0) e_A() = (1,0) i_A() = (67,1) o_A() = (1,0) u_A() = (1,0) isList_A(x1) = ((1,0),(1,0)) x1 + (92,72) U31_A(x1) = (68,1) U42_A(x1) = (67,0) isNeList_A(x1) = ((1,0),(0,0)) x1 + (73,0) isPal_A(x1) = ((1,0),(0,0)) x1 + (80,0) isQid_A(x1) = (74,0) isNePal_A(x1) = ((1,0),(1,0)) x1 + (77,0) precedence: a__isNeList = isNePal > a____# > mark# > mark = a____ = U81 = a__U41 = a__U81 = a__isQid > U41 = a__isPal > nil > isQid > a__U61 = a__U71 = a__isNePal > u > U61 > isPal > a__U42 > U72 = a__U72 > e > U22 = U21 = U11 = a__U11 = tt = a__U21 = a__U22 = a__isList = a__U31 = isList = U31 > a__U51 > U52 = a__U52 > isNeList > U51 > __ > o > i = U42 > a > U71 partial status: pi(a____#) = [] pi(__) = [] pi(mark) = [] pi(a____) = [] pi(nil) = [] pi(mark#) = [] pi(U81) = [] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [] pi(U51) = [] pi(U41) = [] pi(U22) = [] pi(U21) = [] pi(U11) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(U42) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p18 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(X,nil()) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U41(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U21(X1,X2)) -> mark#(X1) p12: mark#(U11(X)) -> mark#(X) p13: mark#(__(X1,X2)) -> mark#(X2) p14: mark#(__(X1,X2)) -> mark#(X1) p15: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p16: a____#(__(X,Y),Z) -> mark#(Y) p17: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p3: a____#(__(X,Y),Z) -> mark#(Y) p4: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p5: a____#(X,nil()) -> mark#(X) p6: mark#(__(X1,X2)) -> mark#(X1) p7: mark#(__(X1,X2)) -> mark#(X2) p8: mark#(U11(X)) -> mark#(X) p9: mark#(U21(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U41(X1,X2)) -> mark#(X1) p12: mark#(U51(X1,X2)) -> mark#(X1) p13: mark#(U52(X)) -> mark#(X) p14: mark#(U61(X)) -> mark#(X) p15: mark#(U71(X1,X2)) -> mark#(X1) p16: mark#(U72(X)) -> mark#(X) p17: mark#(U81(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (28,13) ___A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (27,11) mark_A(x1) = ((1,0),(1,0)) x1 + (0,3) a_____A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,0)) x2 + (27,25) mark#_A(x1) = ((1,0),(1,0)) x1 + (11,12) nil_A() = (10,12) U11_A(x1) = ((1,0),(0,0)) x1 + (12,3) U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (5,3) U22_A(x1) = ((1,0),(0,0)) x1 + (2,3) U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (1,0) U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (12,3) U52_A(x1) = ((1,0),(0,0)) x1 + (2,3) U61_A(x1) = ((1,0),(0,0)) x1 + (1,0) U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (58,1) U72_A(x1) = ((1,0),(0,0)) x1 + (12,1) U81_A(x1) = ((1,0),(0,0)) x1 + (12,4) a__U11_A(x1) = ((1,0),(0,0)) x1 + (12,4) tt_A() = (24,0) a__U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(1,0)) x2 + (5,7) a__U22_A(x1) = ((1,0),(0,0)) x1 + (2,4) a__isList_A(x1) = ((1,0),(1,0)) x1 + (21,6) a__U31_A(x1) = ((1,0),(0,0)) x1 + (2,4) a__U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (1,1) a__U42_A(x1) = ((1,0),(0,0)) x1 + (0,2) a__isNeList_A(x1) = ((1,0),(0,0)) x1 + (8,7) a__U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (12,5) a__U52_A(x1) = ((1,0),(0,0)) x1 + (2,4) a__U61_A(x1) = ((1,0),(0,0)) x1 + (1,1) a__U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (58,3) a__U72_A(x1) = ((1,0),(0,0)) x1 + (12,2) a__isPal_A(x1) = ((1,0),(0,0)) x1 + (69,12) a__U81_A(x1) = ((1,0),(0,0)) x1 + (12,5) a__isQid_A(x1) = ((1,0),(0,0)) x1 + (5,7) a__isNePal_A(x1) = ((1,0),(0,0)) x1 + (9,11) a_A() = (25,1) e_A() = (25,1) i_A() = (23,0) o_A() = (20,0) u_A() = (24,0) isList_A(x1) = ((1,0),(1,0)) x1 + (21,1) U31_A(x1) = ((1,0),(0,0)) x1 + (2,3) U42_A(x1) = ((1,0),(0,0)) x1 + (0,1) isNeList_A(x1) = ((1,0),(0,0)) x1 + (8,0) isPal_A(x1) = ((1,0),(0,0)) x1 + (69,1) isQid_A(x1) = ((1,0),(0,0)) x1 + (5,0) isNePal_A(x1) = ((1,0),(0,0)) x1 + (9,0) precedence: a__isList = a__isNePal = isNePal > e > mark = U41 = a__U11 = a__U41 = a__isNeList > U71 = a__U71 > isNeList > a__U42 = U42 > U51 = a__U51 > U81 = a__isPal = a__U81 = isPal > U72 = a__U72 > a____ > U22 = a__U21 = a__U22 > a__U31 = U31 > o > U61 = a__U61 > U52 = tt = a__U52 = a__isQid = a = i = isQid > u > isList > nil > a____# = __ = mark# > U11 = U21 partial status: pi(a____#) = [] pi(__) = [] pi(mark) = [] pi(a____) = [] pi(mark#) = [] pi(nil) = [] pi(U11) = [] pi(U21) = [] pi(U22) = [] pi(U41) = [] pi(U51) = [] pi(U52) = [] pi(U61) = [] pi(U71) = [1] pi(U72) = [] pi(U81) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [1] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(U42) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p3: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p4: a____#(X,nil()) -> mark#(X) p5: mark#(__(X1,X2)) -> mark#(X1) p6: mark#(__(X1,X2)) -> mark#(X2) p7: mark#(U11(X)) -> mark#(X) p8: mark#(U21(X1,X2)) -> mark#(X1) p9: mark#(U22(X)) -> mark#(X) p10: mark#(U41(X1,X2)) -> mark#(X1) p11: mark#(U51(X1,X2)) -> mark#(X1) p12: mark#(U52(X)) -> mark#(X) p13: mark#(U61(X)) -> mark#(X) p14: mark#(U71(X1,X2)) -> mark#(X1) p15: mark#(U72(X)) -> mark#(X) p16: mark#(U81(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(__(X,Y),Z) -> a____#(mark(X),a____(mark(Y),mark(Z))) p2: a____#(X,nil()) -> mark#(X) p3: mark#(U81(X)) -> mark#(X) p4: mark#(U72(X)) -> mark#(X) p5: mark#(U71(X1,X2)) -> mark#(X1) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U41(X1,X2)) -> mark#(X1) p10: mark#(U22(X)) -> mark#(X) p11: mark#(U21(X1,X2)) -> mark#(X1) p12: mark#(U11(X)) -> mark#(X) p13: mark#(__(X1,X2)) -> mark#(X2) p14: mark#(__(X1,X2)) -> mark#(X1) p15: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p16: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((1,0),(1,0)) x1 + x2 + (2,8) ___A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (13,1) mark_A(x1) = ((1,0),(1,1)) x1 + (0,14) a_____A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (13,2) nil_A() = (2,0) mark#_A(x1) = x1 + (3,20) U81_A(x1) = ((1,0),(0,0)) x1 + (4,15) U72_A(x1) = x1 + (4,1) U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (31,15) U61_A(x1) = x1 + (4,19) U52_A(x1) = ((1,0),(0,0)) x1 + (4,1) U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (12,1) U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (6,0) U22_A(x1) = ((1,0),(0,0)) x1 + (4,0) U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (11,1) U11_A(x1) = ((1,0),(1,0)) x1 + (4,1) a__U11_A(x1) = ((1,0),(1,0)) x1 + (4,2) tt_A() = (1,9) a__U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (11,25) a__U22_A(x1) = ((1,0),(0,0)) x1 + (4,10) a__isList_A(x1) = ((1,0),(1,0)) x1 + (8,6) a__U31_A(x1) = (2,11) a__U41_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (6,12) a__U42_A(x1) = (2,11) a__isNeList_A(x1) = ((1,0),(0,0)) x1 + (3,11) a__U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (12,5) a__U52_A(x1) = ((1,0),(0,0)) x1 + (4,2) a__U61_A(x1) = x1 + (4,22) a__U71_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (31,16) a__U72_A(x1) = x1 + (4,2) a__isPal_A(x1) = ((1,0),(0,0)) x1 + (27,22) a__U81_A(x1) = ((1,0),(0,0)) x1 + (4,22) a__isQid_A(x1) = (14,10) a__isNePal_A(x1) = ((1,0),(0,0)) x1 + (19,32) a_A() = (2,1) e_A() = (2,10) i_A() = (2,10) o_A() = (2,0) u_A() = (2,10) isList_A(x1) = ((1,0),(0,0)) x1 + (8,0) U31_A(x1) = (2,0) U42_A(x1) = (2,0) isNeList_A(x1) = ((1,0),(0,0)) x1 + (3,0) isPal_A(x1) = ((1,0),(0,0)) x1 + (27,0) isQid_A(x1) = (14,0) isNePal_A(x1) = ((1,0),(0,0)) x1 + (19,0) precedence: e > __ > a__isNeList > mark = a__isPal = a__isQid = o = isPal > a____ > a__U41 > a__U42 > U42 > a__isNePal > isNePal > U41 > isQid > U51 = a__U51 > a__U31 = a__U52 > U52 > U71 = a__U71 > U72 = a__U72 > U31 > U11 = a__U11 = a__isList > tt = a__U21 = a__U22 > U22 > isNeList > a__U61 > U61 > U81 = a__U81 > a____# = mark# = U21 = a > nil > u > i > isList partial status: pi(a____#) = [2] pi(__) = [] pi(mark) = [] pi(a____) = [] pi(nil) = [] pi(mark#) = [1] pi(U81) = [] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [] pi(U51) = [] pi(U41) = [] pi(U22) = [] pi(U21) = [] pi(U11) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [1] pi(a__U71) = [] pi(a__U72) = [1] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(U42) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(X,nil()) -> mark#(X) p2: mark#(U81(X)) -> mark#(X) p3: mark#(U72(X)) -> mark#(X) p4: mark#(U71(X1,X2)) -> mark#(X1) p5: mark#(U61(X)) -> mark#(X) p6: mark#(U52(X)) -> mark#(X) p7: mark#(U51(X1,X2)) -> mark#(X1) p8: mark#(U41(X1,X2)) -> mark#(X1) p9: mark#(U22(X)) -> mark#(X) p10: mark#(U21(X1,X2)) -> mark#(X1) p11: mark#(U11(X)) -> mark#(X) p12: mark#(__(X1,X2)) -> mark#(X2) p13: mark#(__(X1,X2)) -> mark#(X1) p14: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p15: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(X,nil()) -> mark#(X) p2: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p3: a____#(__(X,Y),Z) -> a____#(mark(Y),mark(Z)) p4: mark#(__(X1,X2)) -> mark#(X1) p5: mark#(__(X1,X2)) -> mark#(X2) p6: mark#(U11(X)) -> mark#(X) p7: mark#(U21(X1,X2)) -> mark#(X1) p8: mark#(U22(X)) -> mark#(X) p9: mark#(U41(X1,X2)) -> mark#(X1) p10: mark#(U51(X1,X2)) -> mark#(X1) p11: mark#(U52(X)) -> mark#(X) p12: mark#(U61(X)) -> mark#(X) p13: mark#(U71(X1,X2)) -> mark#(X1) p14: mark#(U72(X)) -> mark#(X) p15: mark#(U81(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((1,0),(1,1)) x1 + (3,7) nil_A() = (1,1) mark#_A(x1) = ((1,0),(1,0)) x1 + (2,6) ___A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(0,0)) x2 + (21,4) mark_A(x1) = x1 + (0,26) U11_A(x1) = ((1,0),(1,0)) x1 + (3,1) U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (12,1) U22_A(x1) = ((1,0),(0,0)) x1 + (3,1) U41_A(x1,x2) = x1 + ((0,0),(1,0)) x2 + (3,7) U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (18,1) U52_A(x1) = ((1,0),(0,0)) x1 + (3,1) U61_A(x1) = ((1,0),(0,0)) x1 + (3,1) U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (21,2) U72_A(x1) = ((1,0),(0,0)) x1 + (3,1) U81_A(x1) = ((1,0),(1,0)) x1 + (3,1) a_____A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(0,0)) x2 + (21,27) a__U11_A(x1) = ((1,0),(1,0)) x1 + (3,8) tt_A() = (0,7) a__U21_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (12,3) a__U22_A(x1) = ((1,0),(0,0)) x1 + (3,2) a__isList_A(x1) = ((1,0),(1,1)) x1 + (8,1) a__U31_A(x1) = ((1,0),(0,0)) x1 + (1,8) a__U41_A(x1,x2) = x1 + ((0,0),(1,0)) x2 + (3,7) a__U42_A(x1) = (0,8) a__isNeList_A(x1) = ((1,0),(0,0)) x1 + (4,9) a__U51_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (18,5) a__U52_A(x1) = ((1,0),(0,0)) x1 + (3,8) a__U61_A(x1) = ((1,0),(0,0)) x1 + (3,8) a__U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (21,3) a__U72_A(x1) = ((1,0),(0,0)) x1 + (3,2) a__isPal_A(x1) = ((1,0),(0,0)) x1 + (9,14) a__U81_A(x1) = ((1,0),(1,0)) x1 + (3,8) a__isQid_A(x1) = x1 + (1,5) a__isNePal_A(x1) = ((1,0),(1,1)) x1 + (5,2) a_A() = (1,7) e_A() = (1,6) i_A() = (1,8) o_A() = (1,6) u_A() = (0,1) isList_A(x1) = ((1,0),(1,1)) x1 + (8,0) U31_A(x1) = ((1,0),(0,0)) x1 + (1,1) U42_A(x1) = (0,1) isNeList_A(x1) = ((1,0),(0,0)) x1 + (4,1) isPal_A(x1) = ((1,0),(0,0)) x1 + (9,1) isQid_A(x1) = x1 + (1,1) isNePal_A(x1) = ((1,0),(1,1)) x1 + (5,1) precedence: U52 > U31 > __ = a____ = a__U71 > U71 > a__isNeList > a__U51 = a__U52 > mark = a__U61 = a__isNePal > U61 > a__U21 > a__U31 > a__isQid = isQid > a__U72 > isPal > a__U22 > U22 > a__U81 > a__isPal > U81 > U42 = isNeList > a__U41 > a__U42 > isNePal > e > a__U11 = a__isList > U51 > a____# = mark# = U11 = a > U21 > tt = i > nil = o > U41 = U72 = u = isList partial status: pi(a____#) = [] pi(nil) = [] pi(mark#) = [] pi(__) = [] pi(mark) = [] pi(U11) = [] pi(U21) = [] pi(U22) = [] pi(U41) = [] pi(U51) = [] pi(U52) = [] pi(U61) = [] pi(U71) = [] pi(U72) = [] pi(U81) = [] pi(a____) = [] pi(a__U11) = [] pi(tt) = [] pi(a__U21) = [] pi(a__U22) = [] pi(a__isList) = [1] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(U42) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [1] The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a____#(X,nil()) -> mark#(X) p2: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) p3: mark#(__(X1,X2)) -> mark#(X1) p4: mark#(__(X1,X2)) -> mark#(X2) p5: mark#(U11(X)) -> mark#(X) p6: mark#(U21(X1,X2)) -> mark#(X1) p7: mark#(U22(X)) -> mark#(X) p8: mark#(U41(X1,X2)) -> mark#(X1) p9: mark#(U51(X1,X2)) -> mark#(X1) p10: mark#(U52(X)) -> mark#(X) p11: mark#(U61(X)) -> mark#(X) p12: mark#(U71(X1,X2)) -> mark#(X1) p13: mark#(U72(X)) -> mark#(X) p14: mark#(U81(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a____#(X,nil()) -> mark#(X) p2: mark#(U81(X)) -> mark#(X) p3: mark#(U72(X)) -> mark#(X) p4: mark#(U71(X1,X2)) -> mark#(X1) p5: mark#(U61(X)) -> mark#(X) p6: mark#(U52(X)) -> mark#(X) p7: mark#(U51(X1,X2)) -> mark#(X1) p8: mark#(U41(X1,X2)) -> mark#(X1) p9: mark#(U22(X)) -> mark#(X) p10: mark#(U21(X1,X2)) -> mark#(X1) p11: mark#(U11(X)) -> mark#(X) p12: mark#(__(X1,X2)) -> mark#(X2) p13: mark#(__(X1,X2)) -> mark#(X1) p14: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(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, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a____#_A(x1,x2) = ((1,0),(1,1)) x1 + x2 + (1,1) nil_A() = (8,30) mark#_A(x1) = ((1,0),(1,1)) x1 + (2,2) U81_A(x1) = x1 + (3,1) U72_A(x1) = x1 + (3,1) U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (38,1) U61_A(x1) = x1 + (3,1) U52_A(x1) = x1 + (9,3) U51_A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (2,3) U41_A(x1,x2) = x1 + (3,3) U22_A(x1) = x1 + (28,3) U21_A(x1,x2) = x1 + x2 + (20,27) U11_A(x1) = x1 + (3,1) ___A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(1,0)) x2 + (21,35) mark_A(x1) = ((1,0),(1,1)) x1 + (0,28) a_____A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(1,0)) x2 + (21,36) a__U11_A(x1) = x1 + (3,2) tt_A() = (42,29) a__U21_A(x1,x2) = x1 + x2 + (20,46) a__U22_A(x1) = x1 + (28,4) a__isList_A(x1) = x1 + (34,70) a__U31_A(x1) = ((1,0),(0,0)) x1 + (0,30) a__U41_A(x1,x2) = x1 + (3,4) a__U42_A(x1) = (43,33) a__isNeList_A(x1) = x1 + (30,34) a__U51_A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(0,0)) x2 + (2,4) a__U52_A(x1) = x1 + (9,4) a__U61_A(x1) = x1 + (3,2) a__U71_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(1,0)) x2 + (38,66) a__U72_A(x1) = x1 + (3,2) a__isPal_A(x1) = ((1,0),(1,0)) x1 + (40,63) a__U81_A(x1) = x1 + (3,2) a__isQid_A(x1) = x1 + (30,57) a__isNePal_A(x1) = ((1,0),(1,0)) x1 + (34,60) a_A() = (43,30) e_A() = (43,30) i_A() = (43,30) o_A() = (43,30) u_A() = (13,29) isList_A(x1) = x1 + (34,9) U31_A(x1) = ((1,0),(0,0)) x1 + (0,3) U42_A(x1) = (43,33) isNeList_A(x1) = x1 + (30,1) isPal_A(x1) = ((1,0),(0,0)) x1 + (40,1) isQid_A(x1) = x1 + (30,0) isNePal_A(x1) = ((1,0),(0,0)) x1 + (34,1) precedence: isPal > isQid > a__U21 = isNePal > a__U71 = a__U72 = a__isNePal > U72 > U22 = a__U22 = isNeList > a____# = mark# = U51 = mark = a__isQid = o > U71 > __ = a____ > a__U31 = a__U41 = a__isNeList = a__U51 > U31 > a__isPal > U21 > a__isList > a__U42 = U42 > u > U61 = U52 > a__U61 > isList > a__U52 > U11 = a__U11 > U81 = i > e > nil = a > tt > U41 = a__U81 partial status: pi(a____#) = [1, 2] pi(nil) = [] pi(mark#) = [1] pi(U81) = [1] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [] pi(U51) = [1] pi(U41) = [] pi(U22) = [1] pi(U21) = [] pi(U11) = [1] pi(__) = [] pi(mark) = [1] pi(a____) = [1] pi(a__U11) = [1] pi(tt) = [] pi(a__U21) = [2] pi(a__U22) = [1] pi(a__isList) = [] pi(a__U31) = [] pi(a__U41) = [] pi(a__U42) = [] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__U52) = [] pi(a__U61) = [] pi(a__U71) = [] pi(a__U72) = [] pi(a__isPal) = [] pi(a__U81) = [] pi(a__isQid) = [] pi(a__isNePal) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isList) = [] pi(U31) = [] pi(U42) = [] pi(isNeList) = [] pi(isPal) = [] pi(isQid) = [] pi(isNePal) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(U72(X)) -> mark#(X) p3: mark#(U71(X1,X2)) -> mark#(X1) p4: mark#(U61(X)) -> mark#(X) p5: mark#(U52(X)) -> mark#(X) p6: mark#(U51(X1,X2)) -> mark#(X1) p7: mark#(U41(X1,X2)) -> mark#(X1) p8: mark#(U22(X)) -> mark#(X) p9: mark#(U21(X1,X2)) -> mark#(X1) p10: mark#(U11(X)) -> mark#(X) p11: mark#(__(X1,X2)) -> mark#(X2) p12: mark#(__(X1,X2)) -> mark#(X1) p13: mark#(__(X1,X2)) -> a____#(mark(X1),mark(X2)) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X1) p3: mark#(__(X1,X2)) -> mark#(X2) p4: mark#(U11(X)) -> mark#(X) p5: mark#(U21(X1,X2)) -> mark#(X1) p6: mark#(U22(X)) -> mark#(X) p7: mark#(U41(X1,X2)) -> mark#(X1) p8: mark#(U51(X1,X2)) -> mark#(X1) p9: mark#(U52(X)) -> mark#(X) p10: mark#(U61(X)) -> mark#(X) p11: mark#(U71(X1,X2)) -> mark#(X1) p12: mark#(U72(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(0,0)) x1 + (2,2) U81_A(x1) = ((1,0),(0,0)) x1 + (3,1) ___A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (1,1) U11_A(x1) = ((1,0),(0,0)) x1 + (1,1) U21_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (3,3) U22_A(x1) = ((1,0),(0,0)) x1 + (3,3) U41_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (1,3) U51_A(x1,x2) = x1 + (3,3) U52_A(x1) = ((1,0),(0,0)) x1 + (1,3) U61_A(x1) = ((1,0),(0,0)) x1 + (3,3) U71_A(x1,x2) = x1 + (3,3) U72_A(x1) = ((1,0),(0,0)) x1 + (3,3) precedence: U71 = U72 > U81 > __ > U11 > U21 > U22 > U52 > U61 > mark# = U41 > U51 partial status: pi(mark#) = [] pi(U81) = [] pi(__) = [] pi(U11) = [] pi(U21) = [] pi(U22) = [] pi(U41) = [] pi(U51) = [] pi(U52) = [] pi(U61) = [] pi(U71) = [] pi(U72) = [] The next rules are strictly ordered: p7 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X1) p3: mark#(__(X1,X2)) -> mark#(X2) p4: mark#(U11(X)) -> mark#(X) p5: mark#(U21(X1,X2)) -> mark#(X1) p6: mark#(U22(X)) -> mark#(X) p7: mark#(U51(X1,X2)) -> mark#(X1) p8: mark#(U52(X)) -> mark#(X) p9: mark#(U61(X)) -> mark#(X) p10: mark#(U71(X1,X2)) -> mark#(X1) p11: mark#(U72(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(U72(X)) -> mark#(X) p3: mark#(U71(X1,X2)) -> mark#(X1) p4: mark#(U61(X)) -> mark#(X) p5: mark#(U52(X)) -> mark#(X) p6: mark#(U51(X1,X2)) -> mark#(X1) p7: mark#(U22(X)) -> mark#(X) p8: mark#(U21(X1,X2)) -> mark#(X1) p9: mark#(U11(X)) -> mark#(X) p10: mark#(__(X1,X2)) -> mark#(X2) p11: mark#(__(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(0,0)) x1 + (1,2) U81_A(x1) = ((1,0),(0,0)) x1 + (2,1) U72_A(x1) = ((1,0),(1,1)) x1 + (2,1) U71_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (2,3) U61_A(x1) = ((1,0),(0,0)) x1 + (2,3) U52_A(x1) = ((1,0),(0,0)) x1 + (2,3) U51_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (2,3) U22_A(x1) = ((1,0),(0,0)) x1 + (2,3) U21_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (2,3) U11_A(x1) = x1 + (2,3) ___A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (2,3) precedence: mark# = U71 = U61 = U22 = U21 > __ > U81 > U72 > U52 > U11 > U51 partial status: pi(mark#) = [] pi(U81) = [] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [] pi(U51) = [] pi(U22) = [] pi(U21) = [] pi(U11) = [] pi(__) = [] The next rules are strictly ordered: p8 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(U72(X)) -> mark#(X) p3: mark#(U71(X1,X2)) -> mark#(X1) p4: mark#(U61(X)) -> mark#(X) p5: mark#(U52(X)) -> mark#(X) p6: mark#(U51(X1,X2)) -> mark#(X1) p7: mark#(U22(X)) -> mark#(X) p8: mark#(U11(X)) -> mark#(X) p9: mark#(__(X1,X2)) -> mark#(X2) p10: mark#(__(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X1) p3: mark#(__(X1,X2)) -> mark#(X2) p4: mark#(U11(X)) -> mark#(X) p5: mark#(U22(X)) -> mark#(X) p6: mark#(U51(X1,X2)) -> mark#(X1) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U61(X)) -> mark#(X) p9: mark#(U71(X1,X2)) -> mark#(X1) p10: mark#(U72(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = x1 + (1,1) U81_A(x1) = x1 + (2,2) ___A(x1,x2) = x1 + x2 + (2,2) U11_A(x1) = x1 + (2,2) U22_A(x1) = ((1,0),(1,1)) x1 + (2,2) U51_A(x1,x2) = ((1,0),(1,1)) x1 + x2 + (2,2) U52_A(x1) = ((1,0),(1,1)) x1 + (2,2) U61_A(x1) = x1 + (2,2) U71_A(x1,x2) = x1 + ((1,0),(1,1)) x2 + (2,2) U72_A(x1) = x1 + (2,2) precedence: U11 > U71 > U72 > U81 > U52 > __ > U61 > mark# = U22 = U51 partial status: pi(mark#) = [1] pi(U81) = [] pi(__) = [] pi(U11) = [] pi(U22) = [1] pi(U51) = [1] pi(U52) = [1] pi(U61) = [] pi(U71) = [1] pi(U72) = [1] The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X1) p3: mark#(__(X1,X2)) -> mark#(X2) p4: mark#(U11(X)) -> mark#(X) p5: mark#(U22(X)) -> mark#(X) p6: mark#(U52(X)) -> mark#(X) p7: mark#(U61(X)) -> mark#(X) p8: mark#(U71(X1,X2)) -> mark#(X1) p9: mark#(U72(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U81(X)) -> mark#(X) p2: mark#(U72(X)) -> mark#(X) p3: mark#(U71(X1,X2)) -> mark#(X1) p4: mark#(U61(X)) -> mark#(X) p5: mark#(U52(X)) -> mark#(X) p6: mark#(U22(X)) -> mark#(X) p7: mark#(U11(X)) -> mark#(X) p8: mark#(__(X1,X2)) -> mark#(X2) p9: mark#(__(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = x1 U81_A(x1) = ((1,0),(1,1)) x1 + (1,1) U72_A(x1) = x1 + (1,1) U71_A(x1,x2) = x1 + (1,1) U61_A(x1) = x1 + (1,1) U52_A(x1) = x1 + (1,1) U22_A(x1) = ((1,0),(1,1)) x1 + (1,1) U11_A(x1) = ((1,0),(1,1)) x1 + (1,1) ___A(x1,x2) = ((1,0),(1,0)) x1 + ((1,0),(1,1)) x2 + (1,1) precedence: U81 > U71 > U72 = U61 > U11 > __ > U52 > U22 > mark# partial status: pi(mark#) = [1] pi(U81) = [] pi(U72) = [] pi(U71) = [] pi(U61) = [] pi(U52) = [1] pi(U22) = [] pi(U11) = [] pi(__) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(U71(X1,X2)) -> mark#(X1) p3: mark#(U61(X)) -> mark#(X) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U22(X)) -> mark#(X) p6: mark#(U11(X)) -> mark#(X) p7: mark#(__(X1,X2)) -> mark#(X2) p8: mark#(__(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X1) p3: mark#(__(X1,X2)) -> mark#(X2) p4: mark#(U11(X)) -> mark#(X) p5: mark#(U22(X)) -> mark#(X) p6: mark#(U52(X)) -> mark#(X) p7: mark#(U61(X)) -> mark#(X) p8: mark#(U71(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = x1 + (1,1) U72_A(x1) = x1 + (2,2) ___A(x1,x2) = x1 + ((1,0),(1,1)) x2 + (2,2) U11_A(x1) = x1 + (2,2) U22_A(x1) = x1 + (2,2) U52_A(x1) = x1 + (2,2) U61_A(x1) = ((1,0),(1,1)) x1 + (2,2) U71_A(x1,x2) = x1 + x2 + (2,2) precedence: U22 > U52 > U71 > __ > U61 > U72 > mark# = U11 partial status: pi(mark#) = [1] pi(U72) = [] pi(__) = [] pi(U11) = [1] pi(U22) = [1] pi(U52) = [] pi(U61) = [] pi(U71) = [1, 2] The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X1) p3: mark#(__(X1,X2)) -> mark#(X2) p4: mark#(U11(X)) -> mark#(X) p5: mark#(U52(X)) -> mark#(X) p6: mark#(U61(X)) -> mark#(X) p7: mark#(U71(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(U71(X1,X2)) -> mark#(X1) p3: mark#(U61(X)) -> mark#(X) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U11(X)) -> mark#(X) p6: mark#(__(X1,X2)) -> mark#(X2) p7: mark#(__(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(1,1)) x1 + (1,2) U72_A(x1) = ((1,0),(1,1)) x1 + (2,3) U71_A(x1,x2) = ((1,0),(1,1)) x1 + x2 + (2,3) U61_A(x1) = ((1,0),(1,1)) x1 + (2,2) U52_A(x1) = x1 + (2,3) U11_A(x1) = ((1,0),(1,1)) x1 + (2,3) ___A(x1,x2) = ((1,0),(1,0)) x1 + x2 + (2,1) precedence: U71 = U61 > __ > U72 = U11 > mark# = U52 partial status: pi(mark#) = [1] pi(U72) = [1] pi(U71) = [1, 2] pi(U61) = [1] pi(U52) = [1] pi(U11) = [] pi(__) = [] The next rules are strictly ordered: p7 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(U71(X1,X2)) -> mark#(X1) p3: mark#(U61(X)) -> mark#(X) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U11(X)) -> mark#(X) p6: mark#(__(X1,X2)) -> mark#(X2) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X2) p3: mark#(U11(X)) -> mark#(X) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U61(X)) -> mark#(X) p6: mark#(U71(X1,X2)) -> mark#(X1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = x1 + (1,1) U72_A(x1) = ((1,0),(1,1)) x1 + (2,2) ___A(x1,x2) = ((1,0),(1,1)) x2 + (2,2) U11_A(x1) = ((1,0),(1,1)) x1 + (2,2) U52_A(x1) = x1 + (2,2) U61_A(x1) = ((1,0),(1,1)) x1 + (2,2) U71_A(x1,x2) = ((1,0),(0,0)) x1 + x2 + (2,2) precedence: mark# = U11 > U72 = U61 > U71 > __ = U52 partial status: pi(mark#) = [1] pi(U72) = [1] pi(__) = [2] pi(U11) = [1] pi(U52) = [1] pi(U61) = [1] pi(U71) = [] The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X2) p3: mark#(U11(X)) -> mark#(X) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U61(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U72(X)) -> mark#(X) p2: mark#(U61(X)) -> mark#(X) p3: mark#(U52(X)) -> mark#(X) p4: mark#(U11(X)) -> mark#(X) p5: mark#(__(X1,X2)) -> mark#(X2) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(1,0)) x1 + (2,2) U72_A(x1) = x1 + (1,1) U61_A(x1) = ((1,0),(1,0)) x1 + (3,3) U52_A(x1) = ((1,0),(0,0)) x1 + (3,3) U11_A(x1) = ((1,0),(1,1)) x1 + (3,3) ___A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (3,1) precedence: U72 = U11 = __ > mark# = U61 = U52 partial status: pi(mark#) = [] pi(U72) = [1] pi(U61) = [] pi(U52) = [] pi(U11) = [] pi(__) = [1] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U61(X)) -> mark#(X) p2: mark#(U52(X)) -> mark#(X) p3: mark#(U11(X)) -> mark#(X) p4: mark#(__(X1,X2)) -> mark#(X2) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U61(X)) -> mark#(X) p2: mark#(__(X1,X2)) -> mark#(X2) p3: mark#(U11(X)) -> mark#(X) p4: mark#(U52(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = x1 U61_A(x1) = x1 + (1,1) ___A(x1,x2) = x1 + ((1,0),(1,1)) x2 + (1,1) U11_A(x1) = x1 + (1,1) U52_A(x1) = x1 + (1,1) precedence: U52 > __ = U11 > mark# > U61 partial status: pi(mark#) = [1] pi(U61) = [] pi(__) = [2] pi(U11) = [1] pi(U52) = [1] The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U61(X)) -> mark#(X) p2: mark#(U11(X)) -> mark#(X) p3: mark#(U52(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U61(X)) -> mark#(X) p2: mark#(U52(X)) -> mark#(X) p3: mark#(U11(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(0,0)) x1 U61_A(x1) = ((1,0),(1,0)) x1 + (1,1) U52_A(x1) = x1 + (1,1) U11_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: mark# = U61 = U11 > U52 partial status: pi(mark#) = [] pi(U61) = [] pi(U52) = [1] pi(U11) = [] The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U61(X)) -> mark#(X) p2: mark#(U11(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U61(X)) -> mark#(X) p2: mark#(U11(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(0,0)) x1 + (1,1) U61_A(x1) = x1 + (2,2) U11_A(x1) = ((1,0),(0,0)) x1 + (2,2) precedence: mark# = U61 = U11 partial status: pi(mark#) = [] pi(U61) = [1] pi(U11) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U11(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U11(X)) -> mark#(X) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: mark#_A(x1) = ((1,0),(1,0)) x1 + (2,2) U11_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: mark# = U11 partial status: pi(mark#) = [] pi(U11) = [] The next rules are strictly ordered: p1 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: a__U21#(tt(),V2) -> a__isList#(V2) p2: a__isList#(__(V1,V2)) -> a__isList#(V1) p3: a__isList#(__(V1,V2)) -> a__U21#(a__isList(V1),V2) p4: a__isList#(V) -> a__isNeList#(V) p5: a__isNeList#(__(V1,V2)) -> a__isNeList#(V1) p6: a__isNeList#(__(V1,V2)) -> a__U51#(a__isNeList(V1),V2) p7: a__U51#(tt(),V2) -> a__isList#(V2) p8: a__isNeList#(__(V1,V2)) -> a__isList#(V1) p9: a__isNeList#(__(V1,V2)) -> a__U41#(a__isList(V1),V2) p10: a__U41#(tt(),V2) -> a__isNeList#(V2) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of r4, r5, r6, r7, r8, r9, r10, r11, r16, r17, r18, r19, r20, r21, r26, r27, r28, r29, r30, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r72 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a__U21#_A(x1,x2) = x1 + ((1,0),(0,0)) x2 + (3,2) tt_A() = (5,6) a__isList#_A(x1) = ((1,0),(0,0)) x1 + (7,7) ___A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(1,1)) x2 + (9,9) a__isList_A(x1) = (11,4) a__isNeList#_A(x1) = ((1,0),(0,0)) x1 + (6,2) a__U51#_A(x1,x2) = ((1,0),(0,0)) x2 + (8,8) a__isNeList_A(x1) = ((1,0),(1,1)) x1 + (6,3) a__U41#_A(x1,x2) = ((1,0),(0,0)) x2 + (8,1) a__U22_A(x1) = (6,2) a__U42_A(x1) = (5,6) a__U52_A(x1) = ((1,0),(0,0)) x1 + (1,0) U22_A(x1) = (0,0) U42_A(x1) = (5,6) U52_A(x1) = (0,0) a__U11_A(x1) = (6,7) a__U21_A(x1,x2) = (10,3) a__U31_A(x1) = ((1,0),(0,0)) x1 + (1,1) a__U41_A(x1,x2) = x1 + x2 + (2,6) a__U51_A(x1,x2) = x1 + x2 + (8,7) a__isQid_A(x1) = x1 + (2,4) a_A() = (6,7) e_A() = (6,7) i_A() = (6,7) o_A() = (6,7) u_A() = (6,7) U11_A(x1) = (1,8) U21_A(x1,x2) = (1,4) U31_A(x1) = (0,0) U41_A(x1,x2) = (1,7) U51_A(x1,x2) = (1,8) isQid_A(x1) = (1,5) nil_A() = (6,7) isList_A(x1) = (0,0) isNeList_A(x1) = (0,0) precedence: a > __ > a__U52 > a__isList = a__U51 = isQid > a__U41 > a__U51# = a__U21 > a__U21# = a__isList# > a__isQid > U52 > i = o = u = U11 > a__isNeList# = a__U41# = a__U11 > U21 > U31 = U41 = U51 = nil = isList > tt = a__isNeList = a__U42 = U42 > a__U22 = a__U31 = isNeList > U22 = e partial status: pi(a__U21#) = [] pi(tt) = [] pi(a__isList#) = [] pi(__) = [2] pi(a__isList) = [] pi(a__isNeList#) = [] pi(a__U51#) = [] pi(a__isNeList) = [] pi(a__U41#) = [] pi(a__U22) = [] pi(a__U42) = [] pi(a__U52) = [] pi(U22) = [] pi(U42) = [] pi(U52) = [] pi(a__U11) = [] pi(a__U21) = [] pi(a__U31) = [] pi(a__U41) = [1, 2] pi(a__U51) = [2] pi(a__isQid) = [1] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(U11) = [] pi(U21) = [] pi(U31) = [] pi(U41) = [] pi(U51) = [] pi(isQid) = [] pi(nil) = [] pi(isList) = [] pi(isNeList) = [] The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__U21#(tt(),V2) -> a__isList#(V2) p2: a__isList#(__(V1,V2)) -> a__isList#(V1) p3: a__isList#(__(V1,V2)) -> a__U21#(a__isList(V1),V2) p4: a__isNeList#(__(V1,V2)) -> a__isNeList#(V1) p5: a__isNeList#(__(V1,V2)) -> a__U51#(a__isNeList(V1),V2) p6: a__U51#(tt(),V2) -> a__isList#(V2) p7: a__isNeList#(__(V1,V2)) -> a__isList#(V1) p8: a__isNeList#(__(V1,V2)) -> a__U41#(a__isList(V1),V2) p9: a__U41#(tt(),V2) -> a__isNeList#(V2) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p4, p8, p9} {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__U41#(tt(),V2) -> a__isNeList#(V2) p2: a__isNeList#(__(V1,V2)) -> a__U41#(a__isList(V1),V2) p3: a__isNeList#(__(V1,V2)) -> a__isNeList#(V1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of r4, r5, r6, r7, r8, r9, r10, r11, r16, r17, r18, r19, r20, r21, r26, r27, r28, r29, r30, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r72 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a__U41#_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (2,1) tt_A() = (1,5) a__isNeList#_A(x1) = ((1,0),(1,1)) x1 + (2,6) ___A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(1,1)) x2 + (9,7) a__isList_A(x1) = ((1,0),(1,1)) x1 + (6,25) a__U42_A(x1) = ((0,0),(1,0)) x1 + (2,5) a__U52_A(x1) = ((0,0),(1,0)) x1 + (2,5) U42_A(x1) = (0,0) U52_A(x1) = (0,0) a__U22_A(x1) = (1,6) a__U31_A(x1) = ((1,0),(1,1)) x1 + (1,7) a__U41_A(x1,x2) = ((0,0),(1,0)) x1 + ((1,0),(1,1)) x2 + (10,8) a__isNeList_A(x1) = ((1,0),(1,1)) x1 + (3,8) a__U51_A(x1,x2) = ((0,0),(1,0)) x1 + ((1,0),(1,1)) x2 + (10,11) a__isQid_A(x1) = ((1,0),(1,1)) x1 + (1,1) a_A() = (2,6) e_A() = (2,1) i_A() = (2,6) o_A() = (2,6) u_A() = (2,6) U22_A(x1) = (0,0) U31_A(x1) = (0,0) U41_A(x1,x2) = x2 + (1,1) U51_A(x1,x2) = (1,12) isQid_A(x1) = (0,0) a__U11_A(x1) = ((1,0),(1,1)) x1 + (1,1) a__U21_A(x1,x2) = ((1,0),(1,1)) x1 + (4,1) U11_A(x1) = (0,0) U21_A(x1,x2) = (0,0) isNeList_A(x1) = (0,0) nil_A() = (2,6) isList_A(x1) = (1,26) precedence: o > a > u > i > U51 = U21 > e > isQid = isNeList > a__isList = a__isNeList > a__U42 = a__U41 = a__U51 > tt = a__U52 > a__U41# > a__isNeList# = U42 = a__isQid = U41 = a__U11 > U52 = a__U21 > U11 > U22 = nil > a__U22 > __ = isList > a__U31 = U31 partial status: pi(a__U41#) = [] pi(tt) = [] pi(a__isNeList#) = [] pi(__) = [] pi(a__isList) = [] pi(a__U42) = [] pi(a__U52) = [] pi(U42) = [] pi(U52) = [] pi(a__U22) = [] pi(a__U31) = [1] pi(a__U41) = [2] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__isQid) = [1] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(U22) = [] pi(U31) = [] pi(U41) = [2] pi(U51) = [] pi(isQid) = [] pi(a__U11) = [1] pi(a__U21) = [1] pi(U11) = [] pi(U21) = [] pi(isNeList) = [] pi(nil) = [] pi(isList) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__isNeList#(__(V1,V2)) -> a__U41#(a__isList(V1),V2) p2: a__isNeList#(__(V1,V2)) -> a__isNeList#(V1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__isNeList#(__(V1,V2)) -> a__isNeList#(V1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a__isNeList#_A(x1) = ((1,0),(1,1)) x1 ___A(x1,x2) = ((1,0),(1,1)) x1 + x2 + (1,1) precedence: a__isNeList# = __ partial status: pi(a__isNeList#) = [1] pi(__) = [1] The next rules are strictly ordered: p1 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: a__U21#(tt(),V2) -> a__isList#(V2) p2: a__isList#(__(V1,V2)) -> a__U21#(a__isList(V1),V2) p3: a__isList#(__(V1,V2)) -> a__isList#(V1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of r4, r5, r6, r7, r8, r9, r10, r11, r16, r17, r18, r19, r20, r21, r26, r27, r28, r29, r30, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r72 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a__U21#_A(x1,x2) = ((1,0),(0,0)) x1 + ((1,0),(0,0)) x2 + (2,1) tt_A() = (6,1) a__isList#_A(x1) = ((1,0),(1,0)) x1 + (7,2) ___A(x1,x2) = ((1,0),(1,1)) x1 + ((1,0),(1,1)) x2 + (8,12) a__isList_A(x1) = ((1,0),(1,1)) x1 + (5,11) a__U42_A(x1) = ((0,0),(1,0)) x1 + (7,12) a__U52_A(x1) = ((0,0),(1,0)) x1 + (7,1) U42_A(x1) = (0,0) U52_A(x1) = (1,2) a__U22_A(x1) = (7,2) a__U31_A(x1) = ((1,0),(1,1)) x1 + (1,1) a__U41_A(x1,x2) = ((0,0),(1,0)) x1 + ((1,0),(1,1)) x2 + (9,8) a__isNeList_A(x1) = ((1,0),(1,1)) x1 + (3,2) a__U51_A(x1,x2) = ((0,0),(1,0)) x1 + ((1,0),(1,1)) x2 + (9,20) a__isQid_A(x1) = ((1,0),(1,1)) x1 + (1,1) a_A() = (7,2) e_A() = (7,2) i_A() = (7,2) o_A() = (7,2) u_A() = (7,2) U22_A(x1) = (0,0) U31_A(x1) = (0,0) U41_A(x1,x2) = x2 + (1,1) U51_A(x1,x2) = (1,21) isQid_A(x1) = (0,0) a__U11_A(x1) = ((1,0),(1,1)) x1 + (1,7) a__U21_A(x1,x2) = ((1,0),(1,1)) x1 + (2,1) U11_A(x1) = (0,0) U21_A(x1,x2) = (0,0) isNeList_A(x1) = (1,3) nil_A() = (7,2) isList_A(x1) = (1,12) precedence: i > U51 > a__U51 > a__U42 = a__U52 > tt = a = u > a__U21# = a__isList# > o > a__U41 = U11 = isNeList > a__isList = U42 = a__isNeList > U52 = a__isQid > e = U21 > a__U21 = nil > __ = U41 = isList > a__U22 = a__U31 = U22 = U31 = isQid = a__U11 partial status: pi(a__U21#) = [] pi(tt) = [] pi(a__isList#) = [] pi(__) = [] pi(a__isList) = [] pi(a__U42) = [] pi(a__U52) = [] pi(U42) = [] pi(U52) = [] pi(a__U22) = [] pi(a__U31) = [] pi(a__U41) = [2] pi(a__isNeList) = [] pi(a__U51) = [] pi(a__isQid) = [1] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(U22) = [] pi(U31) = [] pi(U41) = [2] pi(U51) = [] pi(isQid) = [] pi(a__U11) = [1] pi(a__U21) = [1] pi(U11) = [] pi(U21) = [] pi(isNeList) = [] pi(nil) = [] pi(isList) = [] The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__U21#(tt(),V2) -> a__isList#(V2) p2: a__isList#(__(V1,V2)) -> a__isList#(V1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: {p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: a__isList#(__(V1,V2)) -> a__isList#(V1) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a__isList#_A(x1) = ((1,0),(1,1)) x1 ___A(x1,x2) = ((1,0),(1,1)) x1 + x2 + (1,1) precedence: a__isList# = __ partial status: pi(a__isList#) = [1] pi(__) = [1] The next rules are strictly ordered: p1 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: a__U71#(tt(),P) -> a__isPal#(P) p2: a__isPal#(V) -> a__isNePal#(V) p3: a__isNePal#(__(I,__(P,I))) -> a__U71#(a__isQid(I),P) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The set of usable rules consists of r26, r27, r28, r29, r30, r72 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: lexicographic order interpretations: a__U71#_A(x1,x2) = x2 + (4,9) tt_A() = (2,2) a__isPal#_A(x1) = x1 + (3,10) a__isNePal#_A(x1) = x1 ___A(x1,x2) = x1 + x2 + (5,4) a__isQid_A(x1) = (6,3) a_A() = (3,1) e_A() = (3,3) i_A() = (1,3) o_A() = (1,1) u_A() = (3,3) isQid_A(x1) = (5,1) precedence: a__U71# = a__isPal# = a__isQid = a = o > tt = __ = e = i = u > a__isNePal# = isQid partial status: pi(a__U71#) = [] pi(tt) = [] pi(a__isPal#) = [1] pi(a__isNePal#) = [1] pi(__) = [2] pi(a__isQid) = [] pi(a) = [] pi(e) = [] pi(i) = [] pi(o) = [] pi(u) = [] pi(isQid) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: a__isPal#(V) -> a__isNePal#(V) p2: a__isNePal#(__(I,__(P,I))) -> a__U71#(a__isQid(I),P) and R consists of: r1: a____(__(X,Y),Z) -> a____(mark(X),a____(mark(Y),mark(Z))) r2: a____(X,nil()) -> mark(X) r3: a____(nil(),X) -> mark(X) r4: a__U11(tt()) -> tt() r5: a__U21(tt(),V2) -> a__U22(a__isList(V2)) r6: a__U22(tt()) -> tt() r7: a__U31(tt()) -> tt() r8: a__U41(tt(),V2) -> a__U42(a__isNeList(V2)) r9: a__U42(tt()) -> tt() r10: a__U51(tt(),V2) -> a__U52(a__isList(V2)) r11: a__U52(tt()) -> tt() r12: a__U61(tt()) -> tt() r13: a__U71(tt(),P) -> a__U72(a__isPal(P)) r14: a__U72(tt()) -> tt() r15: a__U81(tt()) -> tt() r16: a__isList(V) -> a__U11(a__isNeList(V)) r17: a__isList(nil()) -> tt() r18: a__isList(__(V1,V2)) -> a__U21(a__isList(V1),V2) r19: a__isNeList(V) -> a__U31(a__isQid(V)) r20: a__isNeList(__(V1,V2)) -> a__U41(a__isList(V1),V2) r21: a__isNeList(__(V1,V2)) -> a__U51(a__isNeList(V1),V2) r22: a__isNePal(V) -> a__U61(a__isQid(V)) r23: a__isNePal(__(I,__(P,I))) -> a__U71(a__isQid(I),P) r24: a__isPal(V) -> a__U81(a__isNePal(V)) r25: a__isPal(nil()) -> tt() r26: a__isQid(a()) -> tt() r27: a__isQid(e()) -> tt() r28: a__isQid(i()) -> tt() r29: a__isQid(o()) -> tt() r30: a__isQid(u()) -> tt() r31: mark(__(X1,X2)) -> a____(mark(X1),mark(X2)) r32: mark(U11(X)) -> a__U11(mark(X)) r33: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) r34: mark(U22(X)) -> a__U22(mark(X)) r35: mark(isList(X)) -> a__isList(X) r36: mark(U31(X)) -> a__U31(mark(X)) r37: mark(U41(X1,X2)) -> a__U41(mark(X1),X2) r38: mark(U42(X)) -> a__U42(mark(X)) r39: mark(isNeList(X)) -> a__isNeList(X) r40: mark(U51(X1,X2)) -> a__U51(mark(X1),X2) r41: mark(U52(X)) -> a__U52(mark(X)) r42: mark(U61(X)) -> a__U61(mark(X)) r43: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) r44: mark(U72(X)) -> a__U72(mark(X)) r45: mark(isPal(X)) -> a__isPal(X) r46: mark(U81(X)) -> a__U81(mark(X)) r47: mark(isQid(X)) -> a__isQid(X) r48: mark(isNePal(X)) -> a__isNePal(X) r49: mark(nil()) -> nil() r50: mark(tt()) -> tt() r51: mark(a()) -> a() r52: mark(e()) -> e() r53: mark(i()) -> i() r54: mark(o()) -> o() r55: mark(u()) -> u() r56: a____(X1,X2) -> __(X1,X2) r57: a__U11(X) -> U11(X) r58: a__U21(X1,X2) -> U21(X1,X2) r59: a__U22(X) -> U22(X) r60: a__isList(X) -> isList(X) r61: a__U31(X) -> U31(X) r62: a__U41(X1,X2) -> U41(X1,X2) r63: a__U42(X) -> U42(X) r64: a__isNeList(X) -> isNeList(X) r65: a__U51(X1,X2) -> U51(X1,X2) r66: a__U52(X) -> U52(X) r67: a__U61(X) -> U61(X) r68: a__U71(X1,X2) -> U71(X1,X2) r69: a__U72(X) -> U72(X) r70: a__isPal(X) -> isPal(X) r71: a__U81(X) -> U81(X) r72: a__isQid(X) -> isQid(X) r73: a__isNePal(X) -> isNePal(X) The estimated dependency graph contains the following SCCs: (no SCCs)