YES

We show the termination of the TRS R:

  active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
  active(__(X,nil())) -> mark(X)
  active(__(nil(),X)) -> mark(X)
  active(U11(tt(),V)) -> mark(U12(isNeList(V)))
  active(U12(tt())) -> mark(tt())
  active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
  active(U22(tt(),V2)) -> mark(U23(isList(V2)))
  active(U23(tt())) -> mark(tt())
  active(U31(tt(),V)) -> mark(U32(isQid(V)))
  active(U32(tt())) -> mark(tt())
  active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
  active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
  active(U43(tt())) -> mark(tt())
  active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
  active(U52(tt(),V2)) -> mark(U53(isList(V2)))
  active(U53(tt())) -> mark(tt())
  active(U61(tt(),V)) -> mark(U62(isQid(V)))
  active(U62(tt())) -> mark(tt())
  active(U71(tt(),V)) -> mark(U72(isNePal(V)))
  active(U72(tt())) -> mark(tt())
  active(and(tt(),X)) -> mark(X)
  active(isList(V)) -> mark(U11(isPalListKind(V),V))
  active(isList(nil())) -> mark(tt())
  active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
  active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
  active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
  active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
  active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
  active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
  active(isPal(V)) -> mark(U71(isPalListKind(V),V))
  active(isPal(nil())) -> mark(tt())
  active(isPalListKind(a())) -> mark(tt())
  active(isPalListKind(e())) -> mark(tt())
  active(isPalListKind(i())) -> mark(tt())
  active(isPalListKind(nil())) -> mark(tt())
  active(isPalListKind(o())) -> mark(tt())
  active(isPalListKind(u())) -> mark(tt())
  active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
  active(isQid(a())) -> mark(tt())
  active(isQid(e())) -> mark(tt())
  active(isQid(i())) -> mark(tt())
  active(isQid(o())) -> mark(tt())
  active(isQid(u())) -> mark(tt())
  active(__(X1,X2)) -> __(active(X1),X2)
  active(__(X1,X2)) -> __(X1,active(X2))
  active(U11(X1,X2)) -> U11(active(X1),X2)
  active(U12(X)) -> U12(active(X))
  active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
  active(U22(X1,X2)) -> U22(active(X1),X2)
  active(U23(X)) -> U23(active(X))
  active(U31(X1,X2)) -> U31(active(X1),X2)
  active(U32(X)) -> U32(active(X))
  active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
  active(U42(X1,X2)) -> U42(active(X1),X2)
  active(U43(X)) -> U43(active(X))
  active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
  active(U52(X1,X2)) -> U52(active(X1),X2)
  active(U53(X)) -> U53(active(X))
  active(U61(X1,X2)) -> U61(active(X1),X2)
  active(U62(X)) -> U62(active(X))
  active(U71(X1,X2)) -> U71(active(X1),X2)
  active(U72(X)) -> U72(active(X))
  active(and(X1,X2)) -> and(active(X1),X2)
  __(mark(X1),X2) -> mark(__(X1,X2))
  __(X1,mark(X2)) -> mark(__(X1,X2))
  U11(mark(X1),X2) -> mark(U11(X1,X2))
  U12(mark(X)) -> mark(U12(X))
  U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
  U22(mark(X1),X2) -> mark(U22(X1,X2))
  U23(mark(X)) -> mark(U23(X))
  U31(mark(X1),X2) -> mark(U31(X1,X2))
  U32(mark(X)) -> mark(U32(X))
  U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
  U42(mark(X1),X2) -> mark(U42(X1,X2))
  U43(mark(X)) -> mark(U43(X))
  U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
  U52(mark(X1),X2) -> mark(U52(X1,X2))
  U53(mark(X)) -> mark(U53(X))
  U61(mark(X1),X2) -> mark(U61(X1,X2))
  U62(mark(X)) -> mark(U62(X))
  U71(mark(X1),X2) -> mark(U71(X1,X2))
  U72(mark(X)) -> mark(U72(X))
  and(mark(X1),X2) -> mark(and(X1,X2))
  proper(__(X1,X2)) -> __(proper(X1),proper(X2))
  proper(nil()) -> ok(nil())
  proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
  proper(tt()) -> ok(tt())
  proper(U12(X)) -> U12(proper(X))
  proper(isNeList(X)) -> isNeList(proper(X))
  proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
  proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
  proper(isList(X)) -> isList(proper(X))
  proper(U23(X)) -> U23(proper(X))
  proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
  proper(U32(X)) -> U32(proper(X))
  proper(isQid(X)) -> isQid(proper(X))
  proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
  proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
  proper(U43(X)) -> U43(proper(X))
  proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
  proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
  proper(U53(X)) -> U53(proper(X))
  proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
  proper(U62(X)) -> U62(proper(X))
  proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
  proper(U72(X)) -> U72(proper(X))
  proper(isNePal(X)) -> isNePal(proper(X))
  proper(and(X1,X2)) -> and(proper(X1),proper(X2))
  proper(isPalListKind(X)) -> isPalListKind(proper(X))
  proper(isPal(X)) -> isPal(proper(X))
  proper(a()) -> ok(a())
  proper(e()) -> ok(e())
  proper(i()) -> ok(i())
  proper(o()) -> ok(o())
  proper(u()) -> ok(u())
  __(ok(X1),ok(X2)) -> ok(__(X1,X2))
  U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
  U12(ok(X)) -> ok(U12(X))
  isNeList(ok(X)) -> ok(isNeList(X))
  U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
  U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
  isList(ok(X)) -> ok(isList(X))
  U23(ok(X)) -> ok(U23(X))
  U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
  U32(ok(X)) -> ok(U32(X))
  isQid(ok(X)) -> ok(isQid(X))
  U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
  U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
  U43(ok(X)) -> ok(U43(X))
  U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
  U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
  U53(ok(X)) -> ok(U53(X))
  U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
  U62(ok(X)) -> ok(U62(X))
  U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
  U72(ok(X)) -> ok(U72(X))
  isNePal(ok(X)) -> ok(isNePal(X))
  and(ok(X1),ok(X2)) -> ok(and(X1,X2))
  isPalListKind(ok(X)) -> ok(isPalListKind(X))
  isPal(ok(X)) -> ok(isPal(X))
  top(mark(X)) -> top(proper(X))
  top(ok(X)) -> top(active(X))

-- SCC decomposition.

Consider the dependency pair problem (P, R), where P consists of

p1: active#(__(__(X,Y),Z)) -> __#(X,__(Y,Z))
p2: active#(__(__(X,Y),Z)) -> __#(Y,Z)
p3: active#(U11(tt(),V)) -> U12#(isNeList(V))
p4: active#(U11(tt(),V)) -> isNeList#(V)
p5: active#(U21(tt(),V1,V2)) -> U22#(isList(V1),V2)
p6: active#(U21(tt(),V1,V2)) -> isList#(V1)
p7: active#(U22(tt(),V2)) -> U23#(isList(V2))
p8: active#(U22(tt(),V2)) -> isList#(V2)
p9: active#(U31(tt(),V)) -> U32#(isQid(V))
p10: active#(U31(tt(),V)) -> isQid#(V)
p11: active#(U41(tt(),V1,V2)) -> U42#(isList(V1),V2)
p12: active#(U41(tt(),V1,V2)) -> isList#(V1)
p13: active#(U42(tt(),V2)) -> U43#(isNeList(V2))
p14: active#(U42(tt(),V2)) -> isNeList#(V2)
p15: active#(U51(tt(),V1,V2)) -> U52#(isNeList(V1),V2)
p16: active#(U51(tt(),V1,V2)) -> isNeList#(V1)
p17: active#(U52(tt(),V2)) -> U53#(isList(V2))
p18: active#(U52(tt(),V2)) -> isList#(V2)
p19: active#(U61(tt(),V)) -> U62#(isQid(V))
p20: active#(U61(tt(),V)) -> isQid#(V)
p21: active#(U71(tt(),V)) -> U72#(isNePal(V))
p22: active#(U71(tt(),V)) -> isNePal#(V)
p23: active#(isList(V)) -> U11#(isPalListKind(V),V)
p24: active#(isList(V)) -> isPalListKind#(V)
p25: active#(isList(__(V1,V2))) -> U21#(and(isPalListKind(V1),isPalListKind(V2)),V1,V2)
p26: active#(isList(__(V1,V2))) -> and#(isPalListKind(V1),isPalListKind(V2))
p27: active#(isList(__(V1,V2))) -> isPalListKind#(V1)
p28: active#(isList(__(V1,V2))) -> isPalListKind#(V2)
p29: active#(isNeList(V)) -> U31#(isPalListKind(V),V)
p30: active#(isNeList(V)) -> isPalListKind#(V)
p31: active#(isNeList(__(V1,V2))) -> U41#(and(isPalListKind(V1),isPalListKind(V2)),V1,V2)
p32: active#(isNeList(__(V1,V2))) -> and#(isPalListKind(V1),isPalListKind(V2))
p33: active#(isNeList(__(V1,V2))) -> isPalListKind#(V1)
p34: active#(isNeList(__(V1,V2))) -> isPalListKind#(V2)
p35: active#(isNeList(__(V1,V2))) -> U51#(and(isPalListKind(V1),isPalListKind(V2)),V1,V2)
p36: active#(isNeList(__(V1,V2))) -> and#(isPalListKind(V1),isPalListKind(V2))
p37: active#(isNeList(__(V1,V2))) -> isPalListKind#(V1)
p38: active#(isNeList(__(V1,V2))) -> isPalListKind#(V2)
p39: active#(isNePal(V)) -> U61#(isPalListKind(V),V)
p40: active#(isNePal(V)) -> isPalListKind#(V)
p41: active#(isNePal(__(I,__(P,I)))) -> and#(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P)))
p42: active#(isNePal(__(I,__(P,I)))) -> and#(isQid(I),isPalListKind(I))
p43: active#(isNePal(__(I,__(P,I)))) -> isQid#(I)
p44: active#(isNePal(__(I,__(P,I)))) -> isPalListKind#(I)
p45: active#(isNePal(__(I,__(P,I)))) -> and#(isPal(P),isPalListKind(P))
p46: active#(isNePal(__(I,__(P,I)))) -> isPal#(P)
p47: active#(isNePal(__(I,__(P,I)))) -> isPalListKind#(P)
p48: active#(isPal(V)) -> U71#(isPalListKind(V),V)
p49: active#(isPal(V)) -> isPalListKind#(V)
p50: active#(isPalListKind(__(V1,V2))) -> and#(isPalListKind(V1),isPalListKind(V2))
p51: active#(isPalListKind(__(V1,V2))) -> isPalListKind#(V1)
p52: active#(isPalListKind(__(V1,V2))) -> isPalListKind#(V2)
p53: active#(__(X1,X2)) -> __#(active(X1),X2)
p54: active#(__(X1,X2)) -> active#(X1)
p55: active#(__(X1,X2)) -> __#(X1,active(X2))
p56: active#(__(X1,X2)) -> active#(X2)
p57: active#(U11(X1,X2)) -> U11#(active(X1),X2)
p58: active#(U11(X1,X2)) -> active#(X1)
p59: active#(U12(X)) -> U12#(active(X))
p60: active#(U12(X)) -> active#(X)
p61: active#(U21(X1,X2,X3)) -> U21#(active(X1),X2,X3)
p62: active#(U21(X1,X2,X3)) -> active#(X1)
p63: active#(U22(X1,X2)) -> U22#(active(X1),X2)
p64: active#(U22(X1,X2)) -> active#(X1)
p65: active#(U23(X)) -> U23#(active(X))
p66: active#(U23(X)) -> active#(X)
p67: active#(U31(X1,X2)) -> U31#(active(X1),X2)
p68: active#(U31(X1,X2)) -> active#(X1)
p69: active#(U32(X)) -> U32#(active(X))
p70: active#(U32(X)) -> active#(X)
p71: active#(U41(X1,X2,X3)) -> U41#(active(X1),X2,X3)
p72: active#(U41(X1,X2,X3)) -> active#(X1)
p73: active#(U42(X1,X2)) -> U42#(active(X1),X2)
p74: active#(U42(X1,X2)) -> active#(X1)
p75: active#(U43(X)) -> U43#(active(X))
p76: active#(U43(X)) -> active#(X)
p77: active#(U51(X1,X2,X3)) -> U51#(active(X1),X2,X3)
p78: active#(U51(X1,X2,X3)) -> active#(X1)
p79: active#(U52(X1,X2)) -> U52#(active(X1),X2)
p80: active#(U52(X1,X2)) -> active#(X1)
p81: active#(U53(X)) -> U53#(active(X))
p82: active#(U53(X)) -> active#(X)
p83: active#(U61(X1,X2)) -> U61#(active(X1),X2)
p84: active#(U61(X1,X2)) -> active#(X1)
p85: active#(U62(X)) -> U62#(active(X))
p86: active#(U62(X)) -> active#(X)
p87: active#(U71(X1,X2)) -> U71#(active(X1),X2)
p88: active#(U71(X1,X2)) -> active#(X1)
p89: active#(U72(X)) -> U72#(active(X))
p90: active#(U72(X)) -> active#(X)
p91: active#(and(X1,X2)) -> and#(active(X1),X2)
p92: active#(and(X1,X2)) -> active#(X1)
p93: __#(mark(X1),X2) -> __#(X1,X2)
p94: __#(X1,mark(X2)) -> __#(X1,X2)
p95: U11#(mark(X1),X2) -> U11#(X1,X2)
p96: U12#(mark(X)) -> U12#(X)
p97: U21#(mark(X1),X2,X3) -> U21#(X1,X2,X3)
p98: U22#(mark(X1),X2) -> U22#(X1,X2)
p99: U23#(mark(X)) -> U23#(X)
p100: U31#(mark(X1),X2) -> U31#(X1,X2)
p101: U32#(mark(X)) -> U32#(X)
p102: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3)
p103: U42#(mark(X1),X2) -> U42#(X1,X2)
p104: U43#(mark(X)) -> U43#(X)
p105: U51#(mark(X1),X2,X3) -> U51#(X1,X2,X3)
p106: U52#(mark(X1),X2) -> U52#(X1,X2)
p107: U53#(mark(X)) -> U53#(X)
p108: U61#(mark(X1),X2) -> U61#(X1,X2)
p109: U62#(mark(X)) -> U62#(X)
p110: U71#(mark(X1),X2) -> U71#(X1,X2)
p111: U72#(mark(X)) -> U72#(X)
p112: and#(mark(X1),X2) -> and#(X1,X2)
p113: proper#(__(X1,X2)) -> __#(proper(X1),proper(X2))
p114: proper#(__(X1,X2)) -> proper#(X1)
p115: proper#(__(X1,X2)) -> proper#(X2)
p116: proper#(U11(X1,X2)) -> U11#(proper(X1),proper(X2))
p117: proper#(U11(X1,X2)) -> proper#(X1)
p118: proper#(U11(X1,X2)) -> proper#(X2)
p119: proper#(U12(X)) -> U12#(proper(X))
p120: proper#(U12(X)) -> proper#(X)
p121: proper#(isNeList(X)) -> isNeList#(proper(X))
p122: proper#(isNeList(X)) -> proper#(X)
p123: proper#(U21(X1,X2,X3)) -> U21#(proper(X1),proper(X2),proper(X3))
p124: proper#(U21(X1,X2,X3)) -> proper#(X1)
p125: proper#(U21(X1,X2,X3)) -> proper#(X2)
p126: proper#(U21(X1,X2,X3)) -> proper#(X3)
p127: proper#(U22(X1,X2)) -> U22#(proper(X1),proper(X2))
p128: proper#(U22(X1,X2)) -> proper#(X1)
p129: proper#(U22(X1,X2)) -> proper#(X2)
p130: proper#(isList(X)) -> isList#(proper(X))
p131: proper#(isList(X)) -> proper#(X)
p132: proper#(U23(X)) -> U23#(proper(X))
p133: proper#(U23(X)) -> proper#(X)
p134: proper#(U31(X1,X2)) -> U31#(proper(X1),proper(X2))
p135: proper#(U31(X1,X2)) -> proper#(X1)
p136: proper#(U31(X1,X2)) -> proper#(X2)
p137: proper#(U32(X)) -> U32#(proper(X))
p138: proper#(U32(X)) -> proper#(X)
p139: proper#(isQid(X)) -> isQid#(proper(X))
p140: proper#(isQid(X)) -> proper#(X)
p141: proper#(U41(X1,X2,X3)) -> U41#(proper(X1),proper(X2),proper(X3))
p142: proper#(U41(X1,X2,X3)) -> proper#(X1)
p143: proper#(U41(X1,X2,X3)) -> proper#(X2)
p144: proper#(U41(X1,X2,X3)) -> proper#(X3)
p145: proper#(U42(X1,X2)) -> U42#(proper(X1),proper(X2))
p146: proper#(U42(X1,X2)) -> proper#(X1)
p147: proper#(U42(X1,X2)) -> proper#(X2)
p148: proper#(U43(X)) -> U43#(proper(X))
p149: proper#(U43(X)) -> proper#(X)
p150: proper#(U51(X1,X2,X3)) -> U51#(proper(X1),proper(X2),proper(X3))
p151: proper#(U51(X1,X2,X3)) -> proper#(X1)
p152: proper#(U51(X1,X2,X3)) -> proper#(X2)
p153: proper#(U51(X1,X2,X3)) -> proper#(X3)
p154: proper#(U52(X1,X2)) -> U52#(proper(X1),proper(X2))
p155: proper#(U52(X1,X2)) -> proper#(X1)
p156: proper#(U52(X1,X2)) -> proper#(X2)
p157: proper#(U53(X)) -> U53#(proper(X))
p158: proper#(U53(X)) -> proper#(X)
p159: proper#(U61(X1,X2)) -> U61#(proper(X1),proper(X2))
p160: proper#(U61(X1,X2)) -> proper#(X1)
p161: proper#(U61(X1,X2)) -> proper#(X2)
p162: proper#(U62(X)) -> U62#(proper(X))
p163: proper#(U62(X)) -> proper#(X)
p164: proper#(U71(X1,X2)) -> U71#(proper(X1),proper(X2))
p165: proper#(U71(X1,X2)) -> proper#(X1)
p166: proper#(U71(X1,X2)) -> proper#(X2)
p167: proper#(U72(X)) -> U72#(proper(X))
p168: proper#(U72(X)) -> proper#(X)
p169: proper#(isNePal(X)) -> isNePal#(proper(X))
p170: proper#(isNePal(X)) -> proper#(X)
p171: proper#(and(X1,X2)) -> and#(proper(X1),proper(X2))
p172: proper#(and(X1,X2)) -> proper#(X1)
p173: proper#(and(X1,X2)) -> proper#(X2)
p174: proper#(isPalListKind(X)) -> isPalListKind#(proper(X))
p175: proper#(isPalListKind(X)) -> proper#(X)
p176: proper#(isPal(X)) -> isPal#(proper(X))
p177: proper#(isPal(X)) -> proper#(X)
p178: __#(ok(X1),ok(X2)) -> __#(X1,X2)
p179: U11#(ok(X1),ok(X2)) -> U11#(X1,X2)
p180: U12#(ok(X)) -> U12#(X)
p181: isNeList#(ok(X)) -> isNeList#(X)
p182: U21#(ok(X1),ok(X2),ok(X3)) -> U21#(X1,X2,X3)
p183: U22#(ok(X1),ok(X2)) -> U22#(X1,X2)
p184: isList#(ok(X)) -> isList#(X)
p185: U23#(ok(X)) -> U23#(X)
p186: U31#(ok(X1),ok(X2)) -> U31#(X1,X2)
p187: U32#(ok(X)) -> U32#(X)
p188: isQid#(ok(X)) -> isQid#(X)
p189: U41#(ok(X1),ok(X2),ok(X3)) -> U41#(X1,X2,X3)
p190: U42#(ok(X1),ok(X2)) -> U42#(X1,X2)
p191: U43#(ok(X)) -> U43#(X)
p192: U51#(ok(X1),ok(X2),ok(X3)) -> U51#(X1,X2,X3)
p193: U52#(ok(X1),ok(X2)) -> U52#(X1,X2)
p194: U53#(ok(X)) -> U53#(X)
p195: U61#(ok(X1),ok(X2)) -> U61#(X1,X2)
p196: U62#(ok(X)) -> U62#(X)
p197: U71#(ok(X1),ok(X2)) -> U71#(X1,X2)
p198: U72#(ok(X)) -> U72#(X)
p199: isNePal#(ok(X)) -> isNePal#(X)
p200: and#(ok(X1),ok(X2)) -> and#(X1,X2)
p201: isPalListKind#(ok(X)) -> isPalListKind#(X)
p202: isPal#(ok(X)) -> isPal#(X)
p203: top#(mark(X)) -> top#(proper(X))
p204: top#(mark(X)) -> proper#(X)
p205: top#(ok(X)) -> top#(active(X))
p206: top#(ok(X)) -> active#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The estimated dependency graph contains the following SCCs:

  {p203, p205}
  {p54, p56, p58, p60, p62, p64, p66, p68, p70, p72, p74, p76, p78, p80, p82, p84, p86, p88, p90, p92}
  {p114, p115, p117, p118, p120, p122, p124, p125, p126, p128, p129, p131, p133, p135, p136, p138, p140, p142, p143, p144, p146, p147, p149, p151, p152, p153, p155, p156, p158, p160, p161, p163, p165, p166, p168, p170, p172, p173, p175, p177}
  {p93, p94, p178}
  {p96, p180}
  {p181}
  {p98, p183}
  {p184}
  {p99, p185}
  {p101, p187}
  {p188}
  {p103, p190}
  {p104, p191}
  {p106, p193}
  {p107, p194}
  {p109, p196}
  {p111, p198}
  {p199}
  {p95, p179}
  {p201}
  {p97, p182}
  {p112, p200}
  {p100, p186}
  {p102, p189}
  {p105, p192}
  {p108, p195}
  {p202}
  {p110, p197}


-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: top#(ok(X)) -> top#(active(X))
p2: top#(mark(X)) -> top#(proper(X))

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        u > o > i > proper > isPalListKind > __ > U41 > isPal > U71 > U51 > U21 > U52 > U22 > isList > U11 > isNePal > and > U61 > ok > e > a > nil > U62 > U42 > isNeList > U31 > isQid > U72 > U53 > U43 > U32 > U23 > active > tt > top# > mark > U12
      
      argument filter:
    
        pi(top#) = 1
        pi(ok) = 1
        pi(active) = 1
        pi(mark) = 1
        pi(proper) = 1
        pi(__) = [1, 2]
        pi(U11) = [1, 2]
        pi(U12) = [1]
        pi(U21) = [1, 2, 3]
        pi(U22) = [1, 2]
        pi(U23) = [1]
        pi(U31) = [1]
        pi(U32) = [1]
        pi(U41) = [1, 2, 3]
        pi(U42) = [1, 2]
        pi(U43) = 1
        pi(U51) = [1, 2, 3]
        pi(U52) = [1, 2]
        pi(U53) = [1]
        pi(U61) = [1, 2]
        pi(U62) = [1]
        pi(U71) = [1, 2]
        pi(U72) = [1]
        pi(and) = [1, 2]
        pi(isNeList) = [1]
        pi(isList) = [1]
        pi(isQid) = []
        pi(isNePal) = [1]
        pi(isPalListKind) = 1
        pi(isPal) = [1]
        pi(nil) = []
        pi(tt) = []
        pi(a) = []
        pi(e) = []
        pi(i) = []
        pi(o) = []
        pi(u) = []
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isPal > isQid > U11 > U62 > U53 > U52 > U51 > U43 > U42 > U32 > U21 > proper > isNeList > U72 > U22 > U12 > __ > mark > and > active > U61 > isNePal > isPalListKind > U23 > tt > u > o > i > e > a > isList > U41 > U31 > U71 > nil > top#
      
      argument filter:
    
        pi(top#) = 1
        pi(ok) = 1
        pi(active) = 1
        pi(mark) = [1]
        pi(proper) = 1
        pi(__) = [1, 2]
        pi(U11) = 1
        pi(U12) = [1]
        pi(U21) = [1, 2, 3]
        pi(U22) = [1, 2]
        pi(U23) = 1
        pi(U31) = 1
        pi(U32) = [1]
        pi(U41) = 1
        pi(U42) = [1]
        pi(U43) = [1]
        pi(U51) = [1, 2, 3]
        pi(U52) = 1
        pi(U53) = [1]
        pi(U61) = 1
        pi(U62) = [1]
        pi(U71) = 1
        pi(U72) = [1]
        pi(and) = 1
        pi(isNeList) = 1
        pi(isList) = [1]
        pi(isQid) = []
        pi(isNePal) = [1]
        pi(isPalListKind) = [1]
        pi(isPal) = []
        pi(nil) = []
        pi(tt) = []
        pi(a) = []
        pi(e) = []
        pi(i) = []
        pi(o) = []
        pi(u) = []
    

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: top#(ok(X)) -> top#(active(X))

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The estimated dependency graph contains the following SCCs:

  {p1}


-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: top#(ok(X)) -> top#(active(X))

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        tt > u > o > i > e > a > nil > isPalListKind > U71 > isPal > isQid > and > U61 > isNePal > U11 > isList > U41 > U31 > isNeList > U72 > U62 > U53 > U52 > U51 > U43 > U21 > __ > mark > U42 > U32 > U23 > U22 > U12 > active > top# > ok
      
      argument filter:
    
        pi(top#) = 1
        pi(ok) = [1]
        pi(active) = 1
        pi(__) = [1, 2]
        pi(mark) = []
        pi(U11) = 1
        pi(U12) = [1]
        pi(U21) = [2]
        pi(U22) = [1, 2]
        pi(U23) = [1]
        pi(U31) = [1, 2]
        pi(U32) = [1]
        pi(U41) = [1, 2, 3]
        pi(U42) = [1, 2]
        pi(U43) = [1]
        pi(U51) = [1, 2, 3]
        pi(U52) = [2]
        pi(U53) = 1
        pi(U61) = [1, 2]
        pi(U62) = [1]
        pi(U71) = [1, 2]
        pi(U72) = 1
        pi(and) = 1
        pi(isNeList) = [1]
        pi(isList) = [1]
        pi(isQid) = [1]
        pi(isNePal) = [1]
        pi(isPalListKind) = 1
        pi(isPal) = [1]
        pi(nil) = []
        pi(tt) = []
        pi(a) = []
        pi(e) = []
        pi(i) = []
        pi(o) = []
        pi(u) = []
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        mark > tt > u > o > i > e > a > nil > U71 > isPalListKind > isPal > isQid > and > U61 > isNePal > U11 > isList > U41 > U31 > isNeList > U72 > U62 > U53 > U52 > U51 > U43 > U42 > U32 > U23 > U22 > U21 > active > ok > top# > U12 > __
      
      argument filter:
    
        pi(top#) = 1
        pi(ok) = []
        pi(active) = 1
        pi(__) = 2
        pi(mark) = []
        pi(U11) = [1]
        pi(U12) = [1]
        pi(U21) = 2
        pi(U22) = 2
        pi(U23) = []
        pi(U31) = 2
        pi(U32) = [1]
        pi(U41) = 3
        pi(U42) = 2
        pi(U43) = [1]
        pi(U51) = [1, 2, 3]
        pi(U52) = []
        pi(U53) = 1
        pi(U61) = []
        pi(U62) = [1]
        pi(U71) = 1
        pi(U72) = 1
        pi(and) = [1]
        pi(isNeList) = [1]
        pi(isList) = [1]
        pi(isQid) = [1]
        pi(isNePal) = []
        pi(isPalListKind) = [1]
        pi(isPal) = [1]
        pi(nil) = []
        pi(tt) = []
        pi(a) = []
        pi(e) = []
        pi(i) = []
        pi(o) = []
        pi(u) = []
    

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: active#(and(X1,X2)) -> active#(X1)
p2: active#(U72(X)) -> active#(X)
p3: active#(U71(X1,X2)) -> active#(X1)
p4: active#(U62(X)) -> active#(X)
p5: active#(U61(X1,X2)) -> active#(X1)
p6: active#(U53(X)) -> active#(X)
p7: active#(U52(X1,X2)) -> active#(X1)
p8: active#(U51(X1,X2,X3)) -> active#(X1)
p9: active#(U43(X)) -> active#(X)
p10: active#(U42(X1,X2)) -> active#(X1)
p11: active#(U41(X1,X2,X3)) -> active#(X1)
p12: active#(U32(X)) -> active#(X)
p13: active#(U31(X1,X2)) -> active#(X1)
p14: active#(U23(X)) -> active#(X)
p15: active#(U22(X1,X2)) -> active#(X1)
p16: active#(U21(X1,X2,X3)) -> active#(X1)
p17: active#(U12(X)) -> active#(X)
p18: active#(U11(X1,X2)) -> active#(X1)
p19: active#(__(X1,X2)) -> active#(X2)
p20: active#(__(X1,X2)) -> active#(X1)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        active# > __ > U11 > U12 > U21 > U22 > U23 > U31 > U32 > U41 > U42 > U43 > U51 > U52 > U53 > U61 > U62 > U71 > U72 > and
      
      argument filter:
    
        pi(active#) = 1
        pi(and) = [1, 2]
        pi(U72) = [1]
        pi(U71) = 1
        pi(U62) = 1
        pi(U61) = 1
        pi(U53) = [1]
        pi(U52) = 1
        pi(U51) = [1, 2, 3]
        pi(U43) = 1
        pi(U42) = [1, 2]
        pi(U41) = 1
        pi(U32) = 1
        pi(U31) = [1]
        pi(U23) = [1]
        pi(U22) = [1, 2]
        pi(U21) = 1
        pi(U12) = [1]
        pi(U11) = 1
        pi(__) = [1, 2]
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        active# > __ > U11 > U12 > U21 > U22 > U23 > U31 > U32 > U41 > U42 > U43 > U51 > U52 > U53 > U61 > U71 > U62 > U72 > and
      
      argument filter:
    
        pi(active#) = 1
        pi(and) = [1, 2]
        pi(U72) = [1]
        pi(U71) = [1]
        pi(U62) = [1]
        pi(U61) = [1]
        pi(U53) = [1]
        pi(U52) = [1]
        pi(U51) = [1, 2, 3]
        pi(U43) = [1]
        pi(U42) = [1, 2]
        pi(U41) = [1]
        pi(U32) = [1]
        pi(U31) = 1
        pi(U23) = [1]
        pi(U22) = [1, 2]
        pi(U21) = [1]
        pi(U12) = [1]
        pi(U11) = [1]
        pi(__) = [1, 2]
    

The next rules are strictly ordered:

  p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20

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: proper#(isPal(X)) -> proper#(X)
p2: proper#(isPalListKind(X)) -> proper#(X)
p3: proper#(and(X1,X2)) -> proper#(X2)
p4: proper#(and(X1,X2)) -> proper#(X1)
p5: proper#(isNePal(X)) -> proper#(X)
p6: proper#(U72(X)) -> proper#(X)
p7: proper#(U71(X1,X2)) -> proper#(X2)
p8: proper#(U71(X1,X2)) -> proper#(X1)
p9: proper#(U62(X)) -> proper#(X)
p10: proper#(U61(X1,X2)) -> proper#(X2)
p11: proper#(U61(X1,X2)) -> proper#(X1)
p12: proper#(U53(X)) -> proper#(X)
p13: proper#(U52(X1,X2)) -> proper#(X2)
p14: proper#(U52(X1,X2)) -> proper#(X1)
p15: proper#(U51(X1,X2,X3)) -> proper#(X3)
p16: proper#(U51(X1,X2,X3)) -> proper#(X2)
p17: proper#(U51(X1,X2,X3)) -> proper#(X1)
p18: proper#(U43(X)) -> proper#(X)
p19: proper#(U42(X1,X2)) -> proper#(X2)
p20: proper#(U42(X1,X2)) -> proper#(X1)
p21: proper#(U41(X1,X2,X3)) -> proper#(X3)
p22: proper#(U41(X1,X2,X3)) -> proper#(X2)
p23: proper#(U41(X1,X2,X3)) -> proper#(X1)
p24: proper#(isQid(X)) -> proper#(X)
p25: proper#(U32(X)) -> proper#(X)
p26: proper#(U31(X1,X2)) -> proper#(X2)
p27: proper#(U31(X1,X2)) -> proper#(X1)
p28: proper#(U23(X)) -> proper#(X)
p29: proper#(isList(X)) -> proper#(X)
p30: proper#(U22(X1,X2)) -> proper#(X2)
p31: proper#(U22(X1,X2)) -> proper#(X1)
p32: proper#(U21(X1,X2,X3)) -> proper#(X3)
p33: proper#(U21(X1,X2,X3)) -> proper#(X2)
p34: proper#(U21(X1,X2,X3)) -> proper#(X1)
p35: proper#(isNeList(X)) -> proper#(X)
p36: proper#(U12(X)) -> proper#(X)
p37: proper#(U11(X1,X2)) -> proper#(X2)
p38: proper#(U11(X1,X2)) -> proper#(X1)
p39: proper#(__(X1,X2)) -> proper#(X2)
p40: proper#(__(X1,X2)) -> proper#(X1)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        proper# > __ > U11 > U12 > isNeList > U21 > U22 > isList > U23 > U31 > U32 > isQid > U41 > U42 > U43 > U51 > U52 > U53 > U61 > U62 > U71 > U72 > isNePal > and > isPalListKind > isPal
      
      argument filter:
    
        pi(proper#) = 1
        pi(isPal) = 1
        pi(isPalListKind) = 1
        pi(and) = [1, 2]
        pi(isNePal) = [1]
        pi(U72) = [1]
        pi(U71) = [1, 2]
        pi(U62) = [1]
        pi(U61) = [1, 2]
        pi(U53) = 1
        pi(U52) = [1, 2]
        pi(U51) = [1, 2, 3]
        pi(U43) = 1
        pi(U42) = [1, 2]
        pi(U41) = [1, 2, 3]
        pi(isQid) = [1]
        pi(U32) = 1
        pi(U31) = [1, 2]
        pi(U23) = [1]
        pi(isList) = [1]
        pi(U22) = [1, 2]
        pi(U21) = [1, 2, 3]
        pi(isNeList) = [1]
        pi(U12) = [1]
        pi(U11) = [1, 2]
        pi(__) = [1, 2]
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        proper# > __ > U11 > U12 > isNeList > U21 > U22 > isList > U23 > U31 > U32 > isQid > U41 > U42 > U43 > U51 > U52 > U53 > U61 > U62 > U71 > U72 > isNePal > and > isPalListKind > isPal
      
      argument filter:
    
        pi(proper#) = 1
        pi(isPal) = 1
        pi(isPalListKind) = [1]
        pi(and) = []
        pi(isNePal) = [1]
        pi(U72) = [1]
        pi(U71) = [1]
        pi(U62) = [1]
        pi(U61) = [2]
        pi(U53) = [1]
        pi(U52) = [2]
        pi(U51) = [2]
        pi(U43) = [1]
        pi(U42) = [2]
        pi(U41) = []
        pi(isQid) = [1]
        pi(U32) = [1]
        pi(U31) = [2]
        pi(U23) = [1]
        pi(isList) = [1]
        pi(U22) = [2]
        pi(U21) = []
        pi(isNeList) = [1]
        pi(U12) = [1]
        pi(U11) = [1]
        pi(__) = [1, 2]
    

The next rules are strictly ordered:

  p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40

We remove them from the problem.

-- SCC decomposition.

Consider the dependency pair problem (P, R), where P consists of

p1: proper#(isPal(X)) -> proper#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The estimated dependency graph contains the following SCCs:

  {p1}


-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: proper#(isPal(X)) -> proper#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        isPal > proper#
      
      argument filter:
    
        pi(proper#) = [1]
        pi(isPal) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        isPal > proper#
      
      argument filter:
    
        pi(proper#) = [1]
        pi(isPal) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: __#(mark(X1),X2) -> __#(X1,X2)
p2: __#(ok(X1),ok(X2)) -> __#(X1,X2)
p3: __#(X1,mark(X2)) -> __#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        __# > ok > mark
      
      argument filter:
    
        pi(__#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        __# > ok > mark
      
      argument filter:
    
        pi(__#) = 1
        pi(mark) = 1
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2, p3

We remove them from the problem.  Then no dependency pair remains.

-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: U12#(mark(X)) -> U12#(X)
p2: U12#(ok(X)) -> U12#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U12# > ok > mark
      
      argument filter:
    
        pi(U12#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U12# > ok > mark
      
      argument filter:
    
        pi(U12#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: isNeList#(ok(X)) -> isNeList#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        ok > isNeList#
      
      argument filter:
    
        pi(isNeList#) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isNeList#
      
      argument filter:
    
        pi(isNeList#) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U22#(mark(X1),X2) -> U22#(X1,X2)
p2: U22#(ok(X1),ok(X2)) -> U22#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U22# > ok > mark
      
      argument filter:
    
        pi(U22#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U22# > ok > mark
      
      argument filter:
    
        pi(U22#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: isList#(ok(X)) -> isList#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        ok > isList#
      
      argument filter:
    
        pi(isList#) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isList#
      
      argument filter:
    
        pi(isList#) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U23#(mark(X)) -> U23#(X)
p2: U23#(ok(X)) -> U23#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U23# > ok > mark
      
      argument filter:
    
        pi(U23#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U23# > ok > mark
      
      argument filter:
    
        pi(U23#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U32#(mark(X)) -> U32#(X)
p2: U32#(ok(X)) -> U32#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U32# > ok > mark
      
      argument filter:
    
        pi(U32#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U32# > ok > mark
      
      argument filter:
    
        pi(U32#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: isQid#(ok(X)) -> isQid#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        ok > isQid#
      
      argument filter:
    
        pi(isQid#) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isQid#
      
      argument filter:
    
        pi(isQid#) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U42#(mark(X1),X2) -> U42#(X1,X2)
p2: U42#(ok(X1),ok(X2)) -> U42#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U42# > ok > mark
      
      argument filter:
    
        pi(U42#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U42# > ok > mark
      
      argument filter:
    
        pi(U42#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U43#(mark(X)) -> U43#(X)
p2: U43#(ok(X)) -> U43#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U43# > ok > mark
      
      argument filter:
    
        pi(U43#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U43# > ok > mark
      
      argument filter:
    
        pi(U43#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

We remove them from the problem.  Then no dependency pair remains.

-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: U52#(mark(X1),X2) -> U52#(X1,X2)
p2: U52#(ok(X1),ok(X2)) -> U52#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U52# > ok > mark
      
      argument filter:
    
        pi(U52#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U52# > ok > mark
      
      argument filter:
    
        pi(U52#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U53#(mark(X)) -> U53#(X)
p2: U53#(ok(X)) -> U53#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U53# > ok > mark
      
      argument filter:
    
        pi(U53#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U53# > ok > mark
      
      argument filter:
    
        pi(U53#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U62#(mark(X)) -> U62#(X)
p2: U62#(ok(X)) -> U62#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U62# > ok > mark
      
      argument filter:
    
        pi(U62#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U62# > ok > mark
      
      argument filter:
    
        pi(U62#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U72#(mark(X)) -> U72#(X)
p2: U72#(ok(X)) -> U72#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U72# > ok > mark
      
      argument filter:
    
        pi(U72#) = 1
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U72# > ok > mark
      
      argument filter:
    
        pi(U72#) = 1
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: isNePal#(ok(X)) -> isNePal#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        ok > isNePal#
      
      argument filter:
    
        pi(isNePal#) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isNePal#
      
      argument filter:
    
        pi(isNePal#) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U11#(mark(X1),X2) -> U11#(X1,X2)
p2: U11#(ok(X1),ok(X2)) -> U11#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U11# > ok > mark
      
      argument filter:
    
        pi(U11#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U11# > ok > mark
      
      argument filter:
    
        pi(U11#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

We remove them from the problem.  Then no dependency pair remains.

-- Reduction pair.

Consider the dependency pair problem (P, R), where P consists of

p1: isPalListKind#(ok(X)) -> isPalListKind#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        ok > isPalListKind#
      
      argument filter:
    
        pi(isPalListKind#) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isPalListKind#
      
      argument filter:
    
        pi(isPalListKind#) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U21#(mark(X1),X2,X3) -> U21#(X1,X2,X3)
p2: U21#(ok(X1),ok(X2),ok(X3)) -> U21#(X1,X2,X3)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U21# > ok > mark
      
      argument filter:
    
        pi(U21#) = 1
        pi(mark) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U21# > ok > mark
      
      argument filter:
    
        pi(U21#) = [1]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2

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: and#(mark(X1),X2) -> and#(X1,X2)
p2: and#(ok(X1),ok(X2)) -> and#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        and# > ok > mark
      
      argument filter:
    
        pi(and#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        and# > ok > mark
      
      argument filter:
    
        pi(and#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U31#(mark(X1),X2) -> U31#(X1,X2)
p2: U31#(ok(X1),ok(X2)) -> U31#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U31# > ok > mark
      
      argument filter:
    
        pi(U31#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U31# > ok > mark
      
      argument filter:
    
        pi(U31#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3)
p2: U41#(ok(X1),ok(X2),ok(X3)) -> U41#(X1,X2,X3)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U41# > ok > mark
      
      argument filter:
    
        pi(U41#) = 1
        pi(mark) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U41# > ok > mark
      
      argument filter:
    
        pi(U41#) = [1]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2

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: U51#(mark(X1),X2,X3) -> U51#(X1,X2,X3)
p2: U51#(ok(X1),ok(X2),ok(X3)) -> U51#(X1,X2,X3)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U51# > ok > mark
      
      argument filter:
    
        pi(U51#) = 1
        pi(mark) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U51# > ok > mark
      
      argument filter:
    
        pi(U51#) = [1]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2

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: U61#(mark(X1),X2) -> U61#(X1,X2)
p2: U61#(ok(X1),ok(X2)) -> U61#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U61# > ok > mark
      
      argument filter:
    
        pi(U61#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U61# > ok > mark
      
      argument filter:
    
        pi(U61#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: isPal#(ok(X)) -> isPal#(X)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        ok > isPal#
      
      argument filter:
    
        pi(isPal#) = [1]
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        ok > isPal#
      
      argument filter:
    
        pi(isPal#) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

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: U71#(mark(X1),X2) -> U71#(X1,X2)
p2: U71#(ok(X1),ok(X2)) -> U71#(X1,X2)

and R consists of:

r1: active(__(__(X,Y),Z)) -> mark(__(X,__(Y,Z)))
r2: active(__(X,nil())) -> mark(X)
r3: active(__(nil(),X)) -> mark(X)
r4: active(U11(tt(),V)) -> mark(U12(isNeList(V)))
r5: active(U12(tt())) -> mark(tt())
r6: active(U21(tt(),V1,V2)) -> mark(U22(isList(V1),V2))
r7: active(U22(tt(),V2)) -> mark(U23(isList(V2)))
r8: active(U23(tt())) -> mark(tt())
r9: active(U31(tt(),V)) -> mark(U32(isQid(V)))
r10: active(U32(tt())) -> mark(tt())
r11: active(U41(tt(),V1,V2)) -> mark(U42(isList(V1),V2))
r12: active(U42(tt(),V2)) -> mark(U43(isNeList(V2)))
r13: active(U43(tt())) -> mark(tt())
r14: active(U51(tt(),V1,V2)) -> mark(U52(isNeList(V1),V2))
r15: active(U52(tt(),V2)) -> mark(U53(isList(V2)))
r16: active(U53(tt())) -> mark(tt())
r17: active(U61(tt(),V)) -> mark(U62(isQid(V)))
r18: active(U62(tt())) -> mark(tt())
r19: active(U71(tt(),V)) -> mark(U72(isNePal(V)))
r20: active(U72(tt())) -> mark(tt())
r21: active(and(tt(),X)) -> mark(X)
r22: active(isList(V)) -> mark(U11(isPalListKind(V),V))
r23: active(isList(nil())) -> mark(tt())
r24: active(isList(__(V1,V2))) -> mark(U21(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r25: active(isNeList(V)) -> mark(U31(isPalListKind(V),V))
r26: active(isNeList(__(V1,V2))) -> mark(U41(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r27: active(isNeList(__(V1,V2))) -> mark(U51(and(isPalListKind(V1),isPalListKind(V2)),V1,V2))
r28: active(isNePal(V)) -> mark(U61(isPalListKind(V),V))
r29: active(isNePal(__(I,__(P,I)))) -> mark(and(and(isQid(I),isPalListKind(I)),and(isPal(P),isPalListKind(P))))
r30: active(isPal(V)) -> mark(U71(isPalListKind(V),V))
r31: active(isPal(nil())) -> mark(tt())
r32: active(isPalListKind(a())) -> mark(tt())
r33: active(isPalListKind(e())) -> mark(tt())
r34: active(isPalListKind(i())) -> mark(tt())
r35: active(isPalListKind(nil())) -> mark(tt())
r36: active(isPalListKind(o())) -> mark(tt())
r37: active(isPalListKind(u())) -> mark(tt())
r38: active(isPalListKind(__(V1,V2))) -> mark(and(isPalListKind(V1),isPalListKind(V2)))
r39: active(isQid(a())) -> mark(tt())
r40: active(isQid(e())) -> mark(tt())
r41: active(isQid(i())) -> mark(tt())
r42: active(isQid(o())) -> mark(tt())
r43: active(isQid(u())) -> mark(tt())
r44: active(__(X1,X2)) -> __(active(X1),X2)
r45: active(__(X1,X2)) -> __(X1,active(X2))
r46: active(U11(X1,X2)) -> U11(active(X1),X2)
r47: active(U12(X)) -> U12(active(X))
r48: active(U21(X1,X2,X3)) -> U21(active(X1),X2,X3)
r49: active(U22(X1,X2)) -> U22(active(X1),X2)
r50: active(U23(X)) -> U23(active(X))
r51: active(U31(X1,X2)) -> U31(active(X1),X2)
r52: active(U32(X)) -> U32(active(X))
r53: active(U41(X1,X2,X3)) -> U41(active(X1),X2,X3)
r54: active(U42(X1,X2)) -> U42(active(X1),X2)
r55: active(U43(X)) -> U43(active(X))
r56: active(U51(X1,X2,X3)) -> U51(active(X1),X2,X3)
r57: active(U52(X1,X2)) -> U52(active(X1),X2)
r58: active(U53(X)) -> U53(active(X))
r59: active(U61(X1,X2)) -> U61(active(X1),X2)
r60: active(U62(X)) -> U62(active(X))
r61: active(U71(X1,X2)) -> U71(active(X1),X2)
r62: active(U72(X)) -> U72(active(X))
r63: active(and(X1,X2)) -> and(active(X1),X2)
r64: __(mark(X1),X2) -> mark(__(X1,X2))
r65: __(X1,mark(X2)) -> mark(__(X1,X2))
r66: U11(mark(X1),X2) -> mark(U11(X1,X2))
r67: U12(mark(X)) -> mark(U12(X))
r68: U21(mark(X1),X2,X3) -> mark(U21(X1,X2,X3))
r69: U22(mark(X1),X2) -> mark(U22(X1,X2))
r70: U23(mark(X)) -> mark(U23(X))
r71: U31(mark(X1),X2) -> mark(U31(X1,X2))
r72: U32(mark(X)) -> mark(U32(X))
r73: U41(mark(X1),X2,X3) -> mark(U41(X1,X2,X3))
r74: U42(mark(X1),X2) -> mark(U42(X1,X2))
r75: U43(mark(X)) -> mark(U43(X))
r76: U51(mark(X1),X2,X3) -> mark(U51(X1,X2,X3))
r77: U52(mark(X1),X2) -> mark(U52(X1,X2))
r78: U53(mark(X)) -> mark(U53(X))
r79: U61(mark(X1),X2) -> mark(U61(X1,X2))
r80: U62(mark(X)) -> mark(U62(X))
r81: U71(mark(X1),X2) -> mark(U71(X1,X2))
r82: U72(mark(X)) -> mark(U72(X))
r83: and(mark(X1),X2) -> mark(and(X1,X2))
r84: proper(__(X1,X2)) -> __(proper(X1),proper(X2))
r85: proper(nil()) -> ok(nil())
r86: proper(U11(X1,X2)) -> U11(proper(X1),proper(X2))
r87: proper(tt()) -> ok(tt())
r88: proper(U12(X)) -> U12(proper(X))
r89: proper(isNeList(X)) -> isNeList(proper(X))
r90: proper(U21(X1,X2,X3)) -> U21(proper(X1),proper(X2),proper(X3))
r91: proper(U22(X1,X2)) -> U22(proper(X1),proper(X2))
r92: proper(isList(X)) -> isList(proper(X))
r93: proper(U23(X)) -> U23(proper(X))
r94: proper(U31(X1,X2)) -> U31(proper(X1),proper(X2))
r95: proper(U32(X)) -> U32(proper(X))
r96: proper(isQid(X)) -> isQid(proper(X))
r97: proper(U41(X1,X2,X3)) -> U41(proper(X1),proper(X2),proper(X3))
r98: proper(U42(X1,X2)) -> U42(proper(X1),proper(X2))
r99: proper(U43(X)) -> U43(proper(X))
r100: proper(U51(X1,X2,X3)) -> U51(proper(X1),proper(X2),proper(X3))
r101: proper(U52(X1,X2)) -> U52(proper(X1),proper(X2))
r102: proper(U53(X)) -> U53(proper(X))
r103: proper(U61(X1,X2)) -> U61(proper(X1),proper(X2))
r104: proper(U62(X)) -> U62(proper(X))
r105: proper(U71(X1,X2)) -> U71(proper(X1),proper(X2))
r106: proper(U72(X)) -> U72(proper(X))
r107: proper(isNePal(X)) -> isNePal(proper(X))
r108: proper(and(X1,X2)) -> and(proper(X1),proper(X2))
r109: proper(isPalListKind(X)) -> isPalListKind(proper(X))
r110: proper(isPal(X)) -> isPal(proper(X))
r111: proper(a()) -> ok(a())
r112: proper(e()) -> ok(e())
r113: proper(i()) -> ok(i())
r114: proper(o()) -> ok(o())
r115: proper(u()) -> ok(u())
r116: __(ok(X1),ok(X2)) -> ok(__(X1,X2))
r117: U11(ok(X1),ok(X2)) -> ok(U11(X1,X2))
r118: U12(ok(X)) -> ok(U12(X))
r119: isNeList(ok(X)) -> ok(isNeList(X))
r120: U21(ok(X1),ok(X2),ok(X3)) -> ok(U21(X1,X2,X3))
r121: U22(ok(X1),ok(X2)) -> ok(U22(X1,X2))
r122: isList(ok(X)) -> ok(isList(X))
r123: U23(ok(X)) -> ok(U23(X))
r124: U31(ok(X1),ok(X2)) -> ok(U31(X1,X2))
r125: U32(ok(X)) -> ok(U32(X))
r126: isQid(ok(X)) -> ok(isQid(X))
r127: U41(ok(X1),ok(X2),ok(X3)) -> ok(U41(X1,X2,X3))
r128: U42(ok(X1),ok(X2)) -> ok(U42(X1,X2))
r129: U43(ok(X)) -> ok(U43(X))
r130: U51(ok(X1),ok(X2),ok(X3)) -> ok(U51(X1,X2,X3))
r131: U52(ok(X1),ok(X2)) -> ok(U52(X1,X2))
r132: U53(ok(X)) -> ok(U53(X))
r133: U61(ok(X1),ok(X2)) -> ok(U61(X1,X2))
r134: U62(ok(X)) -> ok(U62(X))
r135: U71(ok(X1),ok(X2)) -> ok(U71(X1,X2))
r136: U72(ok(X)) -> ok(U72(X))
r137: isNePal(ok(X)) -> ok(isNePal(X))
r138: and(ok(X1),ok(X2)) -> ok(and(X1,X2))
r139: isPalListKind(ok(X)) -> ok(isPalListKind(X))
r140: isPal(ok(X)) -> ok(isPal(X))
r141: top(mark(X)) -> top(proper(X))
r142: top(ok(X)) -> top(active(X))

The set of usable rules consists of

  (no rules)

Take the monotone reduction pair:

  lexicographic combination of reduction pairs:
  
    1. lexicographic path order with precedence:
    
      precedence:
      
        U71# > ok > mark
      
      argument filter:
    
        pi(U71#) = [1, 2]
        pi(mark) = 1
        pi(ok) = 1
    
    2. lexicographic path order with precedence:
    
      precedence:
      
        U71# > ok > mark
      
      argument filter:
    
        pi(U71#) = [1, 2]
        pi(mark) = [1]
        pi(ok) = [1]
    

The next rules are strictly ordered:

  p1, p2
  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, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142

We remove them from the problem.  Then no dependency pair remains.