0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 AND
↳5 QDP
↳6 QDPOrderProof (⇔)
↳7 QDP
↳8 PisEmptyProof (⇔)
↳9 TRUE
↳10 QDP
↳11 QDPOrderProof (⇔)
↳12 QDP
↳13 PisEmptyProof (⇔)
↳14 TRUE
↳15 QDP
↳16 QDPOrderProof (⇔)
↳17 QDP
↳18 PisEmptyProof (⇔)
↳19 TRUE
↳20 QDP
↳21 QDPOrderProof (⇔)
↳22 QDP
↳23 PisEmptyProof (⇔)
↳24 TRUE
↳25 QDP
↳26 QDPOrderProof (⇔)
↳27 QDP
↳28 PisEmptyProof (⇔)
↳29 TRUE
↳30 QDP
↳31 QDPOrderProof (⇔)
↳32 QDP
↳33 PisEmptyProof (⇔)
↳34 TRUE
↳35 QDP
↳36 QDPOrderProof (⇔)
↳37 QDP
↳38 QDPOrderProof (⇔)
↳39 QDP
↳40 PisEmptyProof (⇔)
↳41 TRUE
↳42 QDP
↳43 QDPOrderProof (⇔)
↳44 QDP
↳45 QDPOrderProof (⇔)
↳46 QDP
↳47 PisEmptyProof (⇔)
↳48 TRUE
↳49 QDP
↳50 QDPOrderProof (⇔)
↳51 QDP
↳52 QDPOrderProof (⇔)
↳53 QDP
↳54 PisEmptyProof (⇔)
↳55 TRUE
↳56 QDP
↳57 QDPOrderProof (⇔)
↳58 QDP
↳59 QDPOrderProof (⇔)
↳60 QDP
↳61 PisEmptyProof (⇔)
↳62 TRUE
↳63 QDP
↳64 QDPOrderProof (⇔)
↳65 QDP
↳66 QDPOrderProof (⇔)
↳67 QDP
↳68 PisEmptyProof (⇔)
↳69 TRUE
↳70 QDP
↳71 QDPOrderProof (⇔)
↳72 QDP
↳73 QDPOrderProof (⇔)
↳74 QDP
↳75 PisEmptyProof (⇔)
↳76 TRUE
↳77 QDP
↳78 QDPOrderProof (⇔)
↳79 QDP
↳80 QDPOrderProof (⇔)
↳81 QDP
↳82 PisEmptyProof (⇔)
↳83 TRUE
↳84 QDP
↳85 QDPOrderProof (⇔)
↳86 QDP
↳87 QDPOrderProof (⇔)
↳88 QDP
↳89 PisEmptyProof (⇔)
↳90 TRUE
↳91 QDP
↳92 QDPOrderProof (⇔)
↳93 QDP
↳94 QDPOrderProof (⇔)
↳95 QDP
↳96 PisEmptyProof (⇔)
↳97 TRUE
↳98 QDP
↳99 QDPOrderProof (⇔)
↳100 QDP
↳101 QDPOrderProof (⇔)
↳102 QDP
↳103 PisEmptyProof (⇔)
↳104 TRUE
↳105 QDP
↳106 QDPOrderProof (⇔)
↳107 QDP
↳108 QDPOrderProof (⇔)
↳109 QDP
↳110 PisEmptyProof (⇔)
↳111 TRUE
↳112 QDP
↳113 QDPOrderProof (⇔)
↳114 QDP
↳115 QDPOrderProof (⇔)
↳116 QDP
↳117 PisEmptyProof (⇔)
↳118 TRUE
↳119 QDP
↳120 QDPOrderProof (⇔)
↳121 QDP
↳122 QDPOrderProof (⇔)
↳123 QDP
↳124 PisEmptyProof (⇔)
↳125 TRUE
↳126 QDP
↳127 QDPOrderProof (⇔)
↳128 QDP
↳129 QDPOrderProof (⇔)
↳130 QDP
↳131 PisEmptyProof (⇔)
↳132 TRUE
↳133 QDP
↳134 QDPOrderProof (⇔)
↳135 QDP
↳136 QDPOrderProof (⇔)
↳137 QDP
↳138 PisEmptyProof (⇔)
↳139 TRUE
↳140 QDP
↳141 QDPOrderProof (⇔)
↳142 QDP
↳143 QDPOrderProof (⇔)
↳144 QDP
↳145 PisEmptyProof (⇔)
↳146 TRUE
↳147 QDP
↳148 QDPOrderProof (⇔)
↳149 QDP
↳150 QDPOrderProof (⇔)
↳151 QDP
↳152 PisEmptyProof (⇔)
↳153 TRUE
↳154 QDP
↳155 QDPOrderProof (⇔)
↳156 QDP
↳157 QDPOrderProof (⇔)
↳158 QDP
↳159 PisEmptyProof (⇔)
↳160 TRUE
↳161 QDP
↳162 QDPOrderProof (⇔)
↳163 QDP
↳164 QDPOrderProof (⇔)
↳165 QDP
↳166 QDPOrderProof (⇔)
↳167 QDP
↳168 PisEmptyProof (⇔)
↳169 TRUE
↳170 QDP
↳171 QDPOrderProof (⇔)
↳172 QDP
↳173 QDPOrderProof (⇔)
↳174 QDP
↳175 QDPOrderProof (⇔)
↳176 QDP
↳177 QDPOrderProof (⇔)
↳178 QDP
↳179 QDPOrderProof (⇔)
↳180 QDP
↳181 QDPOrderProof (⇔)
↳182 QDP
↳183 QDPOrderProof (⇔)
↳184 QDP
↳185 QDPOrderProof (⇔)
↳186 QDP
↳187 QDPOrderProof (⇔)
↳188 QDP
↳189 PisEmptyProof (⇔)
↳190 TRUE
↳191 QDP
↳192 QDPOrderProof (⇔)
↳193 QDP
↳194 QDPOrderProof (⇔)
↳195 QDP
↳196 QDPOrderProof (⇔)
↳197 QDP
↳198 QDPOrderProof (⇔)
↳199 QDP
↳200 QDPOrderProof (⇔)
↳201 QDP
↳202 QDPOrderProof (⇔)
↳203 QDP
↳204 QDPOrderProof (⇔)
↳205 QDP
↳206 QDPOrderProof (⇔)
↳207 QDP
↳208 QDPOrderProof (⇔)
↳209 QDP
↳210 QDPOrderProof (⇔)
↳211 QDP
↳212 QDPOrderProof (⇔)
↳213 QDP
↳214 PisEmptyProof (⇔)
↳215 TRUE
↳216 QDP
↳217 QDPOrderProof (⇔)
↳218 QDP
↳219 QDPOrderProof (⇔)
↳220 QDP
↳221 PisEmptyProof (⇔)
↳222 TRUE
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))
ACTIVE(__(__(X, Y), Z)) → __1(X, __(Y, Z))
ACTIVE(__(__(X, Y), Z)) → __1(Y, Z)
ACTIVE(U11(tt, V)) → U121(isNeList(V))
ACTIVE(U11(tt, V)) → ISNELIST(V)
ACTIVE(U21(tt, V1, V2)) → U221(isList(V1), V2)
ACTIVE(U21(tt, V1, V2)) → ISLIST(V1)
ACTIVE(U22(tt, V2)) → U231(isList(V2))
ACTIVE(U22(tt, V2)) → ISLIST(V2)
ACTIVE(U31(tt, V)) → U321(isQid(V))
ACTIVE(U31(tt, V)) → ISQID(V)
ACTIVE(U41(tt, V1, V2)) → U421(isList(V1), V2)
ACTIVE(U41(tt, V1, V2)) → ISLIST(V1)
ACTIVE(U42(tt, V2)) → U431(isNeList(V2))
ACTIVE(U42(tt, V2)) → ISNELIST(V2)
ACTIVE(U51(tt, V1, V2)) → U521(isNeList(V1), V2)
ACTIVE(U51(tt, V1, V2)) → ISNELIST(V1)
ACTIVE(U52(tt, V2)) → U531(isList(V2))
ACTIVE(U52(tt, V2)) → ISLIST(V2)
ACTIVE(U61(tt, V)) → U621(isQid(V))
ACTIVE(U61(tt, V)) → ISQID(V)
ACTIVE(U71(tt, V)) → U721(isNePal(V))
ACTIVE(U71(tt, V)) → ISNEPAL(V)
ACTIVE(isList(V)) → U111(isPalListKind(V), V)
ACTIVE(isList(V)) → ISPALLISTKIND(V)
ACTIVE(isList(__(V1, V2))) → U211(and(isPalListKind(V1), isPalListKind(V2)), V1, V2)
ACTIVE(isList(__(V1, V2))) → AND(isPalListKind(V1), isPalListKind(V2))
ACTIVE(isList(__(V1, V2))) → ISPALLISTKIND(V1)
ACTIVE(isList(__(V1, V2))) → ISPALLISTKIND(V2)
ACTIVE(isNeList(V)) → U311(isPalListKind(V), V)
ACTIVE(isNeList(V)) → ISPALLISTKIND(V)
ACTIVE(isNeList(__(V1, V2))) → U411(and(isPalListKind(V1), isPalListKind(V2)), V1, V2)
ACTIVE(isNeList(__(V1, V2))) → AND(isPalListKind(V1), isPalListKind(V2))
ACTIVE(isNeList(__(V1, V2))) → ISPALLISTKIND(V1)
ACTIVE(isNeList(__(V1, V2))) → ISPALLISTKIND(V2)
ACTIVE(isNeList(__(V1, V2))) → U511(and(isPalListKind(V1), isPalListKind(V2)), V1, V2)
ACTIVE(isNePal(V)) → U611(isPalListKind(V), V)
ACTIVE(isNePal(V)) → ISPALLISTKIND(V)
ACTIVE(isNePal(__(I, __(P, I)))) → AND(and(isQid(I), isPalListKind(I)), and(isPal(P), isPalListKind(P)))
ACTIVE(isNePal(__(I, __(P, I)))) → AND(isQid(I), isPalListKind(I))
ACTIVE(isNePal(__(I, __(P, I)))) → ISQID(I)
ACTIVE(isNePal(__(I, __(P, I)))) → ISPALLISTKIND(I)
ACTIVE(isNePal(__(I, __(P, I)))) → AND(isPal(P), isPalListKind(P))
ACTIVE(isNePal(__(I, __(P, I)))) → ISPAL(P)
ACTIVE(isNePal(__(I, __(P, I)))) → ISPALLISTKIND(P)
ACTIVE(isPal(V)) → U711(isPalListKind(V), V)
ACTIVE(isPal(V)) → ISPALLISTKIND(V)
ACTIVE(isPalListKind(__(V1, V2))) → AND(isPalListKind(V1), isPalListKind(V2))
ACTIVE(isPalListKind(__(V1, V2))) → ISPALLISTKIND(V1)
ACTIVE(isPalListKind(__(V1, V2))) → ISPALLISTKIND(V2)
ACTIVE(__(X1, X2)) → __1(active(X1), X2)
ACTIVE(__(X1, X2)) → ACTIVE(X1)
ACTIVE(__(X1, X2)) → __1(X1, active(X2))
ACTIVE(__(X1, X2)) → ACTIVE(X2)
ACTIVE(U11(X1, X2)) → U111(active(X1), X2)
ACTIVE(U11(X1, X2)) → ACTIVE(X1)
ACTIVE(U12(X)) → U121(active(X))
ACTIVE(U12(X)) → ACTIVE(X)
ACTIVE(U21(X1, X2, X3)) → U211(active(X1), X2, X3)
ACTIVE(U21(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U22(X1, X2)) → U221(active(X1), X2)
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U23(X)) → U231(active(X))
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U31(X1, X2)) → U311(active(X1), X2)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U32(X)) → U321(active(X))
ACTIVE(U32(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2, X3)) → U411(active(X1), X2, X3)
ACTIVE(U41(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U42(X1, X2)) → U421(active(X1), X2)
ACTIVE(U42(X1, X2)) → ACTIVE(X1)
ACTIVE(U43(X)) → U431(active(X))
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2, X3)) → U511(active(X1), X2, X3)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U52(X1, X2)) → U521(active(X1), X2)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → U531(active(X))
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U61(X1, X2)) → U611(active(X1), X2)
ACTIVE(U61(X1, X2)) → ACTIVE(X1)
ACTIVE(U62(X)) → U621(active(X))
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → U711(active(X1), X2)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → U721(active(X))
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(and(X1, X2)) → AND(active(X1), X2)
ACTIVE(and(X1, X2)) → ACTIVE(X1)
__1(mark(X1), X2) → __1(X1, X2)
__1(X1, mark(X2)) → __1(X1, X2)
U111(mark(X1), X2) → U111(X1, X2)
U121(mark(X)) → U121(X)
U211(mark(X1), X2, X3) → U211(X1, X2, X3)
U221(mark(X1), X2) → U221(X1, X2)
U231(mark(X)) → U231(X)
U311(mark(X1), X2) → U311(X1, X2)
U321(mark(X)) → U321(X)
U411(mark(X1), X2, X3) → U411(X1, X2, X3)
U421(mark(X1), X2) → U421(X1, X2)
U431(mark(X)) → U431(X)
U511(mark(X1), X2, X3) → U511(X1, X2, X3)
U521(mark(X1), X2) → U521(X1, X2)
U531(mark(X)) → U531(X)
U611(mark(X1), X2) → U611(X1, X2)
U621(mark(X)) → U621(X)
U711(mark(X1), X2) → U711(X1, X2)
U721(mark(X)) → U721(X)
AND(mark(X1), X2) → AND(X1, X2)
PROPER(__(X1, X2)) → __1(proper(X1), proper(X2))
PROPER(__(X1, X2)) → PROPER(X1)
PROPER(__(X1, X2)) → PROPER(X2)
PROPER(U11(X1, X2)) → U111(proper(X1), proper(X2))
PROPER(U11(X1, X2)) → PROPER(X1)
PROPER(U11(X1, X2)) → PROPER(X2)
PROPER(U12(X)) → U121(proper(X))
PROPER(U12(X)) → PROPER(X)
PROPER(isNeList(X)) → ISNELIST(proper(X))
PROPER(isNeList(X)) → PROPER(X)
PROPER(U21(X1, X2, X3)) → U211(proper(X1), proper(X2), proper(X3))
PROPER(U21(X1, X2, X3)) → PROPER(X1)
PROPER(U21(X1, X2, X3)) → PROPER(X2)
PROPER(U21(X1, X2, X3)) → PROPER(X3)
PROPER(U22(X1, X2)) → U221(proper(X1), proper(X2))
PROPER(U22(X1, X2)) → PROPER(X1)
PROPER(U22(X1, X2)) → PROPER(X2)
PROPER(isList(X)) → ISLIST(proper(X))
PROPER(isList(X)) → PROPER(X)
PROPER(U23(X)) → U231(proper(X))
PROPER(U23(X)) → PROPER(X)
PROPER(U31(X1, X2)) → U311(proper(X1), proper(X2))
PROPER(U31(X1, X2)) → PROPER(X1)
PROPER(U31(X1, X2)) → PROPER(X2)
PROPER(U32(X)) → U321(proper(X))
PROPER(U32(X)) → PROPER(X)
PROPER(isQid(X)) → ISQID(proper(X))
PROPER(isQid(X)) → PROPER(X)
PROPER(U41(X1, X2, X3)) → U411(proper(X1), proper(X2), proper(X3))
PROPER(U41(X1, X2, X3)) → PROPER(X1)
PROPER(U41(X1, X2, X3)) → PROPER(X2)
PROPER(U41(X1, X2, X3)) → PROPER(X3)
PROPER(U42(X1, X2)) → U421(proper(X1), proper(X2))
PROPER(U42(X1, X2)) → PROPER(X1)
PROPER(U42(X1, X2)) → PROPER(X2)
PROPER(U43(X)) → U431(proper(X))
PROPER(U43(X)) → PROPER(X)
PROPER(U51(X1, X2, X3)) → U511(proper(X1), proper(X2), proper(X3))
PROPER(U51(X1, X2, X3)) → PROPER(X1)
PROPER(U51(X1, X2, X3)) → PROPER(X2)
PROPER(U51(X1, X2, X3)) → PROPER(X3)
PROPER(U52(X1, X2)) → U521(proper(X1), proper(X2))
PROPER(U52(X1, X2)) → PROPER(X1)
PROPER(U52(X1, X2)) → PROPER(X2)
PROPER(U53(X)) → U531(proper(X))
PROPER(U53(X)) → PROPER(X)
PROPER(U61(X1, X2)) → U611(proper(X1), proper(X2))
PROPER(U61(X1, X2)) → PROPER(X1)
PROPER(U61(X1, X2)) → PROPER(X2)
PROPER(U62(X)) → U621(proper(X))
PROPER(U62(X)) → PROPER(X)
PROPER(U71(X1, X2)) → U711(proper(X1), proper(X2))
PROPER(U71(X1, X2)) → PROPER(X1)
PROPER(U71(X1, X2)) → PROPER(X2)
PROPER(U72(X)) → U721(proper(X))
PROPER(U72(X)) → PROPER(X)
PROPER(isNePal(X)) → ISNEPAL(proper(X))
PROPER(isNePal(X)) → PROPER(X)
PROPER(and(X1, X2)) → AND(proper(X1), proper(X2))
PROPER(and(X1, X2)) → PROPER(X1)
PROPER(and(X1, X2)) → PROPER(X2)
PROPER(isPalListKind(X)) → ISPALLISTKIND(proper(X))
PROPER(isPalListKind(X)) → PROPER(X)
PROPER(isPal(X)) → ISPAL(proper(X))
PROPER(isPal(X)) → PROPER(X)
__1(ok(X1), ok(X2)) → __1(X1, X2)
U111(ok(X1), ok(X2)) → U111(X1, X2)
U121(ok(X)) → U121(X)
ISNELIST(ok(X)) → ISNELIST(X)
U211(ok(X1), ok(X2), ok(X3)) → U211(X1, X2, X3)
U221(ok(X1), ok(X2)) → U221(X1, X2)
ISLIST(ok(X)) → ISLIST(X)
U231(ok(X)) → U231(X)
U311(ok(X1), ok(X2)) → U311(X1, X2)
U321(ok(X)) → U321(X)
ISQID(ok(X)) → ISQID(X)
U411(ok(X1), ok(X2), ok(X3)) → U411(X1, X2, X3)
U421(ok(X1), ok(X2)) → U421(X1, X2)
U431(ok(X)) → U431(X)
U511(ok(X1), ok(X2), ok(X3)) → U511(X1, X2, X3)
U521(ok(X1), ok(X2)) → U521(X1, X2)
U531(ok(X)) → U531(X)
U611(ok(X1), ok(X2)) → U611(X1, X2)
U621(ok(X)) → U621(X)
U711(ok(X1), ok(X2)) → U711(X1, X2)
U721(ok(X)) → U721(X)
ISNEPAL(ok(X)) → ISNEPAL(X)
AND(ok(X1), ok(X2)) → AND(X1, X2)
ISPALLISTKIND(ok(X)) → ISPALLISTKIND(X)
ISPAL(ok(X)) → ISPAL(X)
TOP(mark(X)) → TOP(proper(X))
TOP(mark(X)) → PROPER(X)
TOP(ok(X)) → TOP(active(X))
TOP(ok(X)) → ACTIVE(X)
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))
ISPAL(ok(X)) → ISPAL(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ISPAL(ok(X)) → ISPAL(X)
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > a > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > u > [tt, i]
ok1: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U221: [1]
U231: [1]
U321: [1]
U513: [3,2,1]
U521: [1]
U612: [1,2]
U712: [1,2]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))
ISPALLISTKIND(ok(X)) → ISPALLISTKIND(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ISPALLISTKIND(ok(X)) → ISPALLISTKIND(X)
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > a > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > u > [tt, i]
ok1: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U221: [1]
U231: [1]
U321: [1]
U513: [3,2,1]
U521: [1]
U612: [1,2]
U712: [1,2]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))
ISNEPAL(ok(X)) → ISNEPAL(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ISNEPAL(ok(X)) → ISNEPAL(X)
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > a > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > u > [tt, i]
ok1: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U221: [1]
U231: [1]
U321: [1]
U513: [3,2,1]
U521: [1]
U612: [1,2]
U712: [1,2]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))
ISQID(ok(X)) → ISQID(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ISQID(ok(X)) → ISQID(X)
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > a > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > u > [tt, i]
ok1: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U221: [1]
U231: [1]
U321: [1]
U513: [3,2,1]
U521: [1]
U612: [1,2]
U712: [1,2]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))
ISLIST(ok(X)) → ISLIST(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ISLIST(ok(X)) → ISLIST(X)
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > a > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > u > [tt, i]
ok1: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U221: [1]
U231: [1]
U321: [1]
U513: [3,2,1]
U521: [1]
U612: [1,2]
U712: [1,2]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))
ISNELIST(ok(X)) → ISNELIST(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ISNELIST(ok(X)) → ISNELIST(X)
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > [ok1, U221, U521] > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > a > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > [tt, i]
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > o > [mark, nil] > top
[active1, 1, U111, U121, isNeList1, U231, U321, U513, U612, U712, isNePal1, e, proper1] > u > [tt, i]
ok1: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U221: [1]
U231: [1]
U321: [1]
U513: [3,2,1]
U521: [1]
U612: [1,2]
U712: [1,2]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))
AND(ok(X1), ok(X2)) → AND(X1, X2)
AND(mark(X1), X2) → AND(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
AND(ok(X1), ok(X2)) → AND(X1, X2)
[U222, U311, U522, U531, isPal1, proper1] > [ok1, isList1, isQid1, U611, U621, o] > top > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > nil > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > a > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > e > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > i > [mark, tt]
u > [ok1, isList1, isQid1, U611, U621, o] > top > [mark, tt]
ok1: [1]
mark: []
nil: []
tt: []
U222: [2,1]
isList1: [1]
U311: [1]
isQid1: [1]
U522: [2,1]
U531: [1]
U611: [1]
U621: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
AND(mark(X1), X2) → AND(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
AND(mark(X1), X2) → AND(X1, X2)
[active1, U422] > _2 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U612 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U712 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > and2 > [mark1, U431, U721] > [isPalListKind, top]
nil > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
e > [mark1, U431, U721] > [isPalListKind, top]
i > [mark1, U431, U721] > [isPalListKind, top]
o > [isPalListKind, top]
u > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
mark1: [1]
active1: [1]
_2: [2,1]
nil: []
U112: [2,1]
tt: []
isNeList1: [1]
U213: [3,1,2]
U222: [1,2]
isList1: [1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,1,3]
U422: [2,1]
U431: [1]
U513: [1,2,3]
U522: [1,2]
U531: [1]
U612: [1,2]
U621: [1]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U721(ok(X)) → U721(X)
U721(mark(X)) → U721(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U721(ok(X)) → U721(X)
U72^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U72^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U721(mark(X)) → U721(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U721(mark(X)) → U721(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U711(ok(X1), ok(X2)) → U711(X1, X2)
U711(mark(X1), X2) → U711(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U711(ok(X1), ok(X2)) → U711(X1, X2)
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U612 > ok1
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
active1 > [1, U121, U212, U221, U531, proper1] > e > ok1
active1 > [1, U121, U212, U221, U531, proper1] > o > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
active1 > [1, U121, U212, U221, U531, proper1] > o > [nil, tt, U431] > U231 > ok1
a > [mark, U321, U412, top] > U612 > ok1
a > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
a > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
i > [mark, U321, U412, top] > U612 > ok1
i > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
i > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
u > [mark, U321, U412, top] > U612 > ok1
u > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
u > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
ok1: [1]
mark: []
active1: [1]
_1: [1]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U212: [2,1]
U221: [1]
isList1: [1]
U231: [1]
U312: [2,1]
U321: [1]
U412: [2,1]
U431: [1]
U531: [1]
U612: [1,2]
U721: [1]
and2: [1,2]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U711(mark(X1), X2) → U711(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U711(mark(X1), X2) → U711(X1, X2)
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > U71^11 > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > U71^11 > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > U71^11 > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > U71^11 > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
nil > top
a > top
e > top
i > [mark1, U121, U511, U721] > U71^11 > top
i > [mark1, U121, U511, U721] > tt > isList > top
i > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
i > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
o > top
u > top
U71^11: [1]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
isList: []
U311: [1]
U321: [1]
isQid: []
U411: [1]
U421: [1]
U431: [1]
U511: [1]
U721: [1]
isNePal: []
and2: [2,1]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U621(ok(X)) → U621(X)
U621(mark(X)) → U621(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U621(ok(X)) → U621(X)
U62^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U62^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U621(mark(X)) → U621(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U621(mark(X)) → U621(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U611(ok(X1), ok(X2)) → U611(X1, X2)
U611(mark(X1), X2) → U611(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U611(ok(X1), ok(X2)) → U611(X1, X2)
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U612 > ok1
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
active1 > [1, U121, U212, U221, U531, proper1] > e > ok1
active1 > [1, U121, U212, U221, U531, proper1] > o > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
active1 > [1, U121, U212, U221, U531, proper1] > o > [nil, tt, U431] > U231 > ok1
a > [mark, U321, U412, top] > U612 > ok1
a > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
a > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
i > [mark, U321, U412, top] > U612 > ok1
i > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
i > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
u > [mark, U321, U412, top] > U612 > ok1
u > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
u > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
ok1: [1]
mark: []
active1: [1]
_1: [1]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U212: [2,1]
U221: [1]
isList1: [1]
U231: [1]
U312: [2,1]
U321: [1]
U412: [2,1]
U431: [1]
U531: [1]
U612: [1,2]
U721: [1]
and2: [1,2]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U611(mark(X1), X2) → U611(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U611(mark(X1), X2) → U611(X1, X2)
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > U61^11 > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > U61^11 > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > U61^11 > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > U61^11 > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
nil > top
a > top
e > top
i > [mark1, U121, U511, U721] > U61^11 > top
i > [mark1, U121, U511, U721] > tt > isList > top
i > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
i > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
o > top
u > top
U61^11: [1]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
isList: []
U311: [1]
U321: [1]
isQid: []
U411: [1]
U421: [1]
U431: [1]
U511: [1]
U721: [1]
isNePal: []
and2: [2,1]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U531(ok(X)) → U531(X)
U531(mark(X)) → U531(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U531(ok(X)) → U531(X)
U53^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U53^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U531(mark(X)) → U531(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U531(mark(X)) → U531(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U521(ok(X1), ok(X2)) → U521(X1, X2)
U521(mark(X1), X2) → U521(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U521(ok(X1), ok(X2)) → U521(X1, X2)
proper > nil > tt > mark
proper > a > ok1 > [active1, top] > mark
proper > a > tt > mark
proper > e > tt > mark
proper > i > mark
proper > o > mark
proper > u > mark
ok1: [1]
mark: []
active1: [1]
nil: []
tt: []
a: []
e: []
i: []
o: []
u: []
proper: []
top: []
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))
U521(mark(X1), X2) → U521(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U521(mark(X1), X2) → U521(X1, X2)
[active1, isList] > [isNeList, isPalListKind] > tt > U431 > [isQid, i, ok, top] > _2 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > tt > U431 > [isQid, i, ok, top] > U121 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > tt > U431 > [isQid, i, ok, top] > U221 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > tt > U431 > [isQid, i, ok, top] > U521 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > tt > U431 > [isQid, i, ok, top] > U712 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > [U611, and2, a, proper1] > U431 > [isQid, i, ok, top] > _2 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > [U611, and2, a, proper1] > U431 > [isQid, i, ok, top] > U121 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > [U611, and2, a, proper1] > U431 > [isQid, i, ok, top] > U221 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > [U611, and2, a, proper1] > U431 > [isQid, i, ok, top] > U521 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > [U611, and2, a, proper1] > U431 > [isQid, i, ok, top] > U712 > [mark1, U211, U321]
[active1, isList] > [isNeList, isPalListKind] > [U611, and2, a, proper1] > o > [mark1, U211, U321]
nil > [isQid, i, ok, top] > _2 > [mark1, U211, U321]
nil > [isQid, i, ok, top] > U121 > [mark1, U211, U321]
nil > [isQid, i, ok, top] > U221 > [mark1, U211, U321]
nil > [isQid, i, ok, top] > U521 > [mark1, U211, U321]
nil > [isQid, i, ok, top] > U712 > [mark1, U211, U321]
e > [isQid, i, ok, top] > _2 > [mark1, U211, U321]
e > [isQid, i, ok, top] > U121 > [mark1, U211, U321]
e > [isQid, i, ok, top] > U221 > [mark1, U211, U321]
e > [isQid, i, ok, top] > U521 > [mark1, U211, U321]
e > [isQid, i, ok, top] > U712 > [mark1, U211, U321]
u > [isQid, i, ok, top] > _2 > [mark1, U211, U321]
u > [isQid, i, ok, top] > U121 > [mark1, U211, U321]
u > [isQid, i, ok, top] > U221 > [mark1, U211, U321]
u > [isQid, i, ok, top] > U521 > [mark1, U211, U321]
u > [isQid, i, ok, top] > U712 > [mark1, U211, U321]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
tt: []
U121: [1]
isNeList: []
U211: [1]
U221: [1]
isList: []
U321: [1]
isQid: []
U431: [1]
U521: [1]
U611: [1]
U712: [1,2]
and2: [1,2]
isPalListKind: []
a: []
e: []
i: []
o: []
u: []
proper1: [1]
ok: []
top: []
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))
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))
U511(ok(X1), ok(X2), ok(X3)) → U511(X1, X2, X3)
U511(mark(X1), X2, X3) → U511(X1, X2, X3)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U511(ok(X1), ok(X2), ok(X3)) → U511(X1, X2, X3)
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U51^11
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U51^11
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U51^11
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U51^11
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
U51^11: [1]
ok1: [1]
mark: []
active1: [1]
_2: [2,1]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U222: [2,1]
isList1: [1]
isQid1: [1]
U412: [2,1]
U521: [1]
U531: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U511(mark(X1), X2, X3) → U511(X1, X2, X3)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U511(mark(X1), X2, X3) → U511(X1, X2, X3)
[active1, U231] > [2, and2] > U211 > isList > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > [2, and2] > U511 > isNeList > U411 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > [2, and2] > U511 > U521 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > isList > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > U521 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > U531 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > U621 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U712 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
nil > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
a > [isPalListKind, isPal1, top]
e > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > isList > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > U521 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > U531 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > U621 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > isList > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > U521 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > U531 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > U621 > [U51^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
U51^12: [1,2]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
U211: [1]
isList: []
U231: [1]
isQid: []
U411: [1]
U431: [1]
U511: [1]
U521: [1]
U531: [1]
U611: [1]
U621: [1]
U712: [2,1]
and2: [2,1]
isPalListKind: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U431(ok(X)) → U431(X)
U431(mark(X)) → U431(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U431(ok(X)) → U431(X)
U43^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U43^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U431(mark(X)) → U431(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U431(mark(X)) → U431(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U421(ok(X1), ok(X2)) → U421(X1, X2)
U421(mark(X1), X2) → U421(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U421(ok(X1), ok(X2)) → U421(X1, X2)
active1 > [1, U312, U412, proper1] > [mark, tt, U611, a, e] > U111 > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > [mark, tt, U611, a, e] > U222 > U231 > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > [mark, tt, U611, a, e] > U522 > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > [mark, tt, U611, a, e] > U621 > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > [mark, tt, U611, a, e] > isNePal1 > isPal1 > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > [mark, tt, U611, a, e] > and1 > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > nil > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > i > [ok1, U431, U531, u, top]
active1 > [1, U312, U412, proper1] > o > [ok1, U431, U531, u, top]
U42^11: [1]
ok1: [1]
mark: []
active1: [1]
_1: [1]
nil: []
U111: [1]
tt: []
U222: [2,1]
U231: [1]
U312: [2,1]
U412: [1,2]
U431: [1]
U522: [2,1]
U531: [1]
U611: [1]
U621: [1]
isNePal1: [1]
and1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U421(mark(X1), X2) → U421(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U421(mark(X1), X2) → U421(X1, X2)
[active1, isPalListKind] > _2 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U121 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U411 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U521 > isList > and2 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U621 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > isNePal > isQid > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > isPal > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
nil > [tt, isNeList] > [a, o, u, ok, top]
e > [tt, isNeList] > [a, o, u, ok, top]
i > [a, o, u, ok, top]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
isList: []
isQid: []
U411: [1]
U431: [1]
U521: [1]
U531: [1]
U611: [1]
U621: [1]
U711: [1]
isNePal: []
and2: [1,2]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
ok: []
top: []
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))
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))
U411(ok(X1), ok(X2), ok(X3)) → U411(X1, X2, X3)
U411(mark(X1), X2, X3) → U411(X1, X2, X3)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U411(ok(X1), ok(X2), ok(X3)) → U411(X1, X2, X3)
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U41^11
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
e > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U41^11
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
o > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U41^11
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
u > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U41^11
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > _2 > U412 > isList1 > [ok1, U521]
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > U222 > isList1 > [ok1, U521]
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > a > [ok1, U521]
top > [mark, active1, nil, U111, tt, U121, isNeList1, isQid1, U531, isPal1, proper1] > i
U41^11: [1]
ok1: [1]
mark: []
active1: [1]
_2: [2,1]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U222: [2,1]
isList1: [1]
isQid1: [1]
U412: [2,1]
U521: [1]
U531: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U411(mark(X1), X2, X3) → U411(X1, X2, X3)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U411(mark(X1), X2, X3) → U411(X1, X2, X3)
[active1, U231] > [2, and2] > U211 > isList > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > [2, and2] > U511 > isNeList > U411 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > [2, and2] > U511 > U521 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > isList > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > U521 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > U531 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U121 > [tt, i] > U621 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
[active1, U231] > U712 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
nil > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
a > [isPalListKind, isPal1, top]
e > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > isList > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > U521 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > U531 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
o > [tt, i] > U621 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > isList > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > U521 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > U531 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
u > [tt, i] > U621 > [U41^12, mark1, U111, U431, U611] > isQid > [isPalListKind, isPal1, top]
U41^12: [1,2]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
U211: [1]
isList: []
U231: [1]
isQid: []
U411: [1]
U431: [1]
U511: [1]
U521: [1]
U531: [1]
U611: [1]
U621: [1]
U712: [2,1]
and2: [2,1]
isPalListKind: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U321(ok(X)) → U321(X)
U321(mark(X)) → U321(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U321(ok(X)) → U321(X)
U32^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U32^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U321(mark(X)) → U321(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U321(mark(X)) → U321(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U311(ok(X1), ok(X2)) → U311(X1, X2)
U311(mark(X1), X2) → U311(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U311(ok(X1), ok(X2)) → U311(X1, X2)
[U222, U311, U522, U531, isPal1, proper1] > [ok1, isList1, isQid1, U611, U621, o] > top > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > nil > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > a > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > e > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > i > [mark, tt]
u > [ok1, isList1, isQid1, U611, U621, o] > top > [mark, tt]
ok1: [1]
mark: []
nil: []
tt: []
U222: [2,1]
isList1: [1]
U311: [1]
isQid1: [1]
U522: [2,1]
U531: [1]
U611: [1]
U621: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U311(mark(X1), X2) → U311(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U311(mark(X1), X2) → U311(X1, X2)
[active1, U422] > _2 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U612 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U712 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > and2 > [mark1, U431, U721] > [isPalListKind, top]
nil > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
e > [mark1, U431, U721] > [isPalListKind, top]
i > [mark1, U431, U721] > [isPalListKind, top]
o > [isPalListKind, top]
u > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
mark1: [1]
active1: [1]
_2: [2,1]
nil: []
U112: [2,1]
tt: []
isNeList1: [1]
U213: [3,1,2]
U222: [1,2]
isList1: [1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,1,3]
U422: [2,1]
U431: [1]
U513: [1,2,3]
U522: [1,2]
U531: [1]
U612: [1,2]
U621: [1]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U231(ok(X)) → U231(X)
U231(mark(X)) → U231(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U231(ok(X)) → U231(X)
U23^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U23^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U231(mark(X)) → U231(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U231(mark(X)) → U231(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U221(ok(X1), ok(X2)) → U221(X1, X2)
U221(mark(X1), X2) → U221(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U221(ok(X1), ok(X2)) → U221(X1, X2)
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U612 > ok1
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
active1 > [1, U121, U212, U221, U531, proper1] > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
active1 > [1, U121, U212, U221, U531, proper1] > e > ok1
active1 > [1, U121, U212, U221, U531, proper1] > o > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
active1 > [1, U121, U212, U221, U531, proper1] > o > [nil, tt, U431] > U231 > ok1
a > [mark, U321, U412, top] > U612 > ok1
a > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
a > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
i > [mark, U321, U412, top] > U612 > ok1
i > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
i > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
u > [mark, U321, U412, top] > U612 > ok1
u > [mark, U321, U412, top] > U721 > [nil, tt, U431] > isList1 > [U111, isNeList1, U312, and2] > ok1
u > [mark, U321, U412, top] > U721 > [nil, tt, U431] > U231 > ok1
ok1: [1]
mark: []
active1: [1]
_1: [1]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList1: [1]
U212: [2,1]
U221: [1]
isList1: [1]
U231: [1]
U312: [2,1]
U321: [1]
U412: [2,1]
U431: [1]
U531: [1]
U612: [1,2]
U721: [1]
and2: [1,2]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U221(mark(X1), X2) → U221(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U221(mark(X1), X2) → U221(X1, X2)
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > U22^11 > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > [2, isPal] > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > U22^11 > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > [U111, isNeList, U411, and2] > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > U22^11 > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > U321 > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > U22^11 > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isList > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
[active1, U311, U421] > U431 > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
nil > top
a > top
e > top
i > [mark1, U121, U511, U721] > U22^11 > top
i > [mark1, U121, U511, U721] > tt > isList > top
i > [mark1, U121, U511, U721] > tt > isNePal > isQid > top
i > [mark1, U121, U511, U721] > tt > isNePal > isPalListKind > top
o > top
u > top
U22^11: [1]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
isList: []
U311: [1]
U321: [1]
isQid: []
U411: [1]
U421: [1]
U431: [1]
U511: [1]
U721: [1]
isNePal: []
and2: [2,1]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U211(ok(X1), ok(X2), ok(X3)) → U211(X1, X2, X3)
U211(mark(X1), X2, X3) → U211(X1, X2, X3)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U211(mark(X1), X2, X3) → U211(X1, X2, X3)
U21^11 > [mark1, e, top]
active1 > isQid > proper1 > _2 > [mark1, e, top]
active1 > isQid > proper1 > nil > [mark1, e, top]
active1 > isQid > proper1 > U112 > U121 > [mark1, e, top]
active1 > isQid > proper1 > [tt, U422] > U121 > [mark1, e, top]
active1 > isQid > proper1 > [tt, U422] > U222 > [mark1, e, top]
active1 > isQid > proper1 > [tt, U422] > U231 > [mark1, e, top]
active1 > isQid > proper1 > [tt, U422] > U431 > [mark1, e, top]
active1 > isQid > proper1 > [tt, U422] > U522 > U531 > [mark1, e, top]
active1 > isQid > proper1 > [tt, U422] > U721 > [mark1, e, top]
active1 > isQid > proper1 > U213 > U222 > [mark1, e, top]
active1 > isQid > proper1 > U312 > [mark1, e, top]
active1 > isQid > proper1 > U413 > [mark1, e, top]
active1 > isQid > proper1 > U513 > [mark1, e, top]
active1 > isQid > proper1 > U611 > [mark1, e, top]
active1 > isQid > proper1 > U712 > [mark1, e, top]
active1 > isQid > proper1 > and2 > [mark1, e, top]
active1 > isQid > proper1 > a > [mark1, e, top]
active1 > isQid > proper1 > o > [mark1, e, top]
active1 > isQid > proper1 > u > [mark1, e, top]
i > [tt, U422] > U121 > [mark1, e, top]
i > [tt, U422] > U222 > [mark1, e, top]
i > [tt, U422] > U231 > [mark1, e, top]
i > [tt, U422] > U431 > [mark1, e, top]
i > [tt, U422] > U522 > U531 > [mark1, e, top]
i > [tt, U422] > U721 > [mark1, e, top]
U21^11: [1]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [2,3,1]
U222: [2,1]
U231: [1]
U312: [1,2]
isQid: []
U413: [3,2,1]
U422: [2,1]
U431: [1]
U513: [1,3,2]
U522: [1,2]
U531: [1]
U611: [1]
U712: [2,1]
U721: [1]
and2: [1,2]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U211(ok(X1), ok(X2), ok(X3)) → U211(X1, X2, X3)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U211(ok(X1), ok(X2), ok(X3)) → U211(X1, X2, X3)
proper > a > [mark, nil]
proper > e > ok1 > U21^12 > [mark, nil]
proper > e > ok1 > top > [mark, nil]
proper > e > tt > [mark, nil]
proper > i > [mark, nil]
proper > o > ok1 > U21^12 > [mark, nil]
proper > o > ok1 > top > [mark, nil]
proper > o > tt > [mark, nil]
proper > u > [mark, nil]
U21^12: [2,1]
ok1: [1]
mark: []
nil: []
tt: []
a: []
e: []
i: []
o: []
u: []
proper: []
top: []
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))
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))
U121(ok(X)) → U121(X)
U121(mark(X)) → U121(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U121(ok(X)) → U121(X)
U12^11 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U213 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U231 > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U413 > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U512 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > U612 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > and2 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > a > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > e > tt > isNePal1 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > i > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U121 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U321 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U422 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > U721 > [ok1, isNeList1, U531]
[active1, 2, nil, U222, U312, isQid1, isPalListKind1, proper1] > o > tt > isNePal1 > [ok1, isNeList1, U531]
u > tt > U121 > [ok1, isNeList1, U531]
u > tt > U321 > [ok1, isNeList1, U531]
u > tt > U422 > [ok1, isNeList1, U531]
u > tt > U721 > [ok1, isNeList1, U531]
u > tt > isNePal1 > [ok1, isNeList1, U531]
top > [ok1, isNeList1, U531]
U12^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U121: [1]
isNeList1: [1]
U213: [2,1,3]
U222: [2,1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,3,1]
U422: [1,2]
U512: [1,2]
U531: [1]
U612: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U121(mark(X)) → U121(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U121(mark(X)) → U121(X)
[active1, U121] > _2 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U112 > [mark1, U531]
[active1, U121] > U213 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U312 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U413 > [mark1, U531]
[active1, U121] > U422 > [mark1, U531]
[active1, U121] > U612 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > U721 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
[active1, U121] > and2 > [mark1, U531]
[active1, U121] > isPal1 > U712 > [mark1, U531]
[active1, U121] > isPal1 > isPalListKind1 > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
nil > [mark1, U531]
o > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
u > [tt, U222, isQid] > [U513, U522] > [mark1, U531]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [1,3,2]
U222: [2,1]
U312: [2,1]
isQid: []
U413: [1,3,2]
U422: [2,1]
U513: [3,1,2]
U522: [2,1]
U531: [1]
U612: [1,2]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
U111(ok(X1), ok(X2)) → U111(X1, X2)
U111(mark(X1), X2) → U111(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U111(ok(X1), ok(X2)) → U111(X1, X2)
[U222, U311, U522, U531, isPal1, proper1] > [ok1, isList1, isQid1, U611, U621, o] > top > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > nil > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > a > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > e > [mark, tt]
[U222, U311, U522, U531, isPal1, proper1] > i > [mark, tt]
u > [ok1, isList1, isQid1, U611, U621, o] > top > [mark, tt]
ok1: [1]
mark: []
nil: []
tt: []
U222: [2,1]
isList1: [1]
U311: [1]
isQid1: [1]
U522: [2,1]
U531: [1]
U611: [1]
U621: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
U111(mark(X1), X2) → U111(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
U111(mark(X1), X2) → U111(X1, X2)
[active1, U422] > _2 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U112 > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U321 > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U612 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U621 > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > U712 > [mark1, U431, U721] > [isPalListKind, top]
[active1, U422] > and2 > [mark1, U431, U721] > [isPalListKind, top]
nil > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
a > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
e > [mark1, U431, U721] > [isPalListKind, top]
i > [mark1, U431, U721] > [isPalListKind, top]
o > [isPalListKind, top]
u > tt > isNeList1 > U312 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isNeList1 > U413 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isNeList1 > U513 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > [U222, isList1] > U213 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > [U222, isList1] > U231 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > isQid1 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > U522 > [mark1, U431, U721] > [isPalListKind, top]
u > tt > U531 > [mark1, U431, U721] > [isPalListKind, top]
mark1: [1]
active1: [1]
_2: [2,1]
nil: []
U112: [2,1]
tt: []
isNeList1: [1]
U213: [3,1,2]
U222: [1,2]
isList1: [1]
U231: [1]
U312: [2,1]
U321: [1]
isQid1: [1]
U413: [2,1,3]
U422: [2,1]
U431: [1]
U513: [1,2,3]
U522: [1,2]
U531: [1]
U612: [1,2]
U621: [1]
U712: [2,1]
U721: [1]
and2: [2,1]
isPalListKind: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
__1(X1, mark(X2)) → __1(X1, X2)
__1(mark(X1), X2) → __1(X1, X2)
__1(ok(X1), ok(X2)) → __1(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
__1(ok(X1), ok(X2)) → __1(X1, X2)
active1 > _2 > [isQid1, U612] > [ok1, isList1, U321, U521, o]
active1 > _2 > U412 > [U421, U431] > [ok1, isList1, U321, U521, o]
active1 > _2 > and2 > [ok1, isList1, U321, U521, o]
active1 > U213 > [tt, U222, U531, isPalListKind1] > U231 > [ok1, isList1, U321, U521, o]
active1 > U213 > [tt, U222, U531, isPalListKind1] > [isQid1, U612] > [ok1, isList1, U321, U521, o]
active1 > U213 > [tt, U222, U531, isPalListKind1] > [U421, U431] > [ok1, isList1, U321, U521, o]
active1 > U213 > [tt, U222, U531, isPalListKind1] > and2 > [ok1, isList1, U321, U521, o]
active1 > U512 > [ok1, isList1, U321, U521, o]
active1 > U711 > [ok1, isList1, U321, U521, o]
proper1 > _2 > [isQid1, U612] > [ok1, isList1, U321, U521, o]
proper1 > _2 > U412 > [U421, U431] > [ok1, isList1, U321, U521, o]
proper1 > _2 > and2 > [ok1, isList1, U321, U521, o]
proper1 > nil > [ok1, isList1, U321, U521, o]
proper1 > U213 > [tt, U222, U531, isPalListKind1] > U231 > [ok1, isList1, U321, U521, o]
proper1 > U213 > [tt, U222, U531, isPalListKind1] > [isQid1, U612] > [ok1, isList1, U321, U521, o]
proper1 > U213 > [tt, U222, U531, isPalListKind1] > [U421, U431] > [ok1, isList1, U321, U521, o]
proper1 > U213 > [tt, U222, U531, isPalListKind1] > and2 > [ok1, isList1, U321, U521, o]
proper1 > U512 > [ok1, isList1, U321, U521, o]
proper1 > U711 > [ok1, isList1, U321, U521, o]
proper1 > a > [tt, U222, U531, isPalListKind1] > U231 > [ok1, isList1, U321, U521, o]
proper1 > a > [tt, U222, U531, isPalListKind1] > [isQid1, U612] > [ok1, isList1, U321, U521, o]
proper1 > a > [tt, U222, U531, isPalListKind1] > [U421, U431] > [ok1, isList1, U321, U521, o]
proper1 > a > [tt, U222, U531, isPalListKind1] > and2 > [ok1, isList1, U321, U521, o]
proper1 > e > [tt, U222, U531, isPalListKind1] > U231 > [ok1, isList1, U321, U521, o]
proper1 > e > [tt, U222, U531, isPalListKind1] > [isQid1, U612] > [ok1, isList1, U321, U521, o]
proper1 > e > [tt, U222, U531, isPalListKind1] > [U421, U431] > [ok1, isList1, U321, U521, o]
proper1 > e > [tt, U222, U531, isPalListKind1] > and2 > [ok1, isList1, U321, U521, o]
proper1 > i
proper1 > u
_^11: [1]
ok1: [1]
active1: [1]
_2: [2,1]
nil: []
tt: []
U213: [1,3,2]
U222: [1,2]
isList1: [1]
U231: [1]
U321: [1]
isQid1: [1]
U412: [1,2]
U421: [1]
U431: [1]
U512: [1,2]
U521: [1]
U531: [1]
U612: [1,2]
U711: [1]
and2: [2,1]
isPalListKind1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
__1(X1, mark(X2)) → __1(X1, X2)
__1(mark(X1), X2) → __1(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
__1(X1, mark(X2)) → __1(X1, X2)
active1 > _2 > and2 > [mark1, U211, U231, U431, U531] > isList > [isNePal, isPalListKind] > [tt, isQid]
active1 > _2 > and2 > [mark1, U211, U231, U431, U531] > top
active1 > _2 > isPal > [isNePal, isPalListKind] > [tt, isQid]
active1 > U121 > [mark1, U211, U231, U431, U531] > isList > [isNePal, isPalListKind] > [tt, isQid]
active1 > U121 > [mark1, U211, U231, U431, U531] > top
active1 > [isNeList, U421] > and2 > [mark1, U211, U231, U431, U531] > isList > [isNePal, isPalListKind] > [tt, isQid]
active1 > [isNeList, U421] > and2 > [mark1, U211, U231, U431, U531] > top
active1 > U311 > [mark1, U211, U231, U431, U531] > isList > [isNePal, isPalListKind] > [tt, isQid]
active1 > U311 > [mark1, U211, U231, U431, U531] > top
active1 > U621 > [mark1, U211, U231, U431, U531] > isList > [isNePal, isPalListKind] > [tt, isQid]
active1 > U621 > [mark1, U211, U231, U431, U531] > top
nil > [mark1, U211, U231, U431, U531] > isList > [isNePal, isPalListKind] > [tt, isQid]
nil > [mark1, U211, U231, U431, U531] > top
u > [tt, isQid]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
tt: []
U121: [1]
isNeList: []
U211: [1]
isList: []
U231: [1]
U311: [1]
isQid: []
U421: [1]
U431: [1]
U531: [1]
U621: [1]
isNePal: []
and2: [2,1]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
__1(mark(X1), X2) → __1(X1, X2)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
__1(mark(X1), X2) → __1(X1, X2)
[active1, isPalListKind] > _2 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U121 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U411 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U521 > isList > and2 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > U621 > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > isNePal > isQid > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
[active1, isPalListKind] > isPal > [mark1, U111, U431, U531, U611, U711] > [tt, isNeList] > [a, o, u, ok, top]
nil > [tt, isNeList] > [a, o, u, ok, top]
e > [tt, isNeList] > [a, o, u, ok, top]
i > [a, o, u, ok, top]
mark1: [1]
active1: [1]
_2: [1,2]
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
isList: []
isQid: []
U411: [1]
U431: [1]
U521: [1]
U531: [1]
U611: [1]
U621: [1]
U711: [1]
isNePal: []
and2: [1,2]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
ok: []
top: []
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))
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))
PROPER(__(X1, X2)) → PROPER(X2)
PROPER(__(X1, X2)) → PROPER(X1)
PROPER(U11(X1, X2)) → PROPER(X1)
PROPER(U11(X1, X2)) → PROPER(X2)
PROPER(U12(X)) → PROPER(X)
PROPER(isNeList(X)) → PROPER(X)
PROPER(U21(X1, X2, X3)) → PROPER(X1)
PROPER(U21(X1, X2, X3)) → PROPER(X2)
PROPER(U21(X1, X2, X3)) → PROPER(X3)
PROPER(U22(X1, X2)) → PROPER(X1)
PROPER(U22(X1, X2)) → PROPER(X2)
PROPER(isList(X)) → PROPER(X)
PROPER(U23(X)) → PROPER(X)
PROPER(U31(X1, X2)) → PROPER(X1)
PROPER(U31(X1, X2)) → PROPER(X2)
PROPER(U32(X)) → PROPER(X)
PROPER(isQid(X)) → PROPER(X)
PROPER(U41(X1, X2, X3)) → PROPER(X1)
PROPER(U41(X1, X2, X3)) → PROPER(X2)
PROPER(U41(X1, X2, X3)) → PROPER(X3)
PROPER(U42(X1, X2)) → PROPER(X1)
PROPER(U42(X1, X2)) → PROPER(X2)
PROPER(U43(X)) → PROPER(X)
PROPER(U51(X1, X2, X3)) → PROPER(X1)
PROPER(U51(X1, X2, X3)) → PROPER(X2)
PROPER(U51(X1, X2, X3)) → PROPER(X3)
PROPER(U52(X1, X2)) → PROPER(X1)
PROPER(U52(X1, X2)) → PROPER(X2)
PROPER(U53(X)) → PROPER(X)
PROPER(U61(X1, X2)) → PROPER(X1)
PROPER(U61(X1, X2)) → PROPER(X2)
PROPER(U62(X)) → PROPER(X)
PROPER(U71(X1, X2)) → PROPER(X1)
PROPER(U71(X1, X2)) → PROPER(X2)
PROPER(U72(X)) → PROPER(X)
PROPER(isNePal(X)) → PROPER(X)
PROPER(and(X1, X2)) → PROPER(X1)
PROPER(and(X1, X2)) → PROPER(X2)
PROPER(isPalListKind(X)) → PROPER(X)
PROPER(isPal(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(__(X1, X2)) → PROPER(X2)
PROPER(__(X1, X2)) → PROPER(X1)
PROPER(U11(X1, X2)) → PROPER(X1)
PROPER(U11(X1, X2)) → PROPER(X2)
PROPER(U21(X1, X2, X3)) → PROPER(X1)
PROPER(U21(X1, X2, X3)) → PROPER(X2)
PROPER(U21(X1, X2, X3)) → PROPER(X3)
PROPER(U22(X1, X2)) → PROPER(X1)
PROPER(U22(X1, X2)) → PROPER(X2)
PROPER(U31(X1, X2)) → PROPER(X1)
PROPER(U31(X1, X2)) → PROPER(X2)
PROPER(U41(X1, X2, X3)) → PROPER(X1)
PROPER(U41(X1, X2, X3)) → PROPER(X2)
PROPER(U41(X1, X2, X3)) → PROPER(X3)
PROPER(U42(X1, X2)) → PROPER(X1)
PROPER(U42(X1, X2)) → PROPER(X2)
PROPER(U51(X1, X2, X3)) → PROPER(X1)
PROPER(U51(X1, X2, X3)) → PROPER(X2)
PROPER(U51(X1, X2, X3)) → PROPER(X3)
PROPER(U52(X1, X2)) → PROPER(X1)
PROPER(U52(X1, X2)) → PROPER(X2)
PROPER(U61(X1, X2)) → PROPER(X1)
PROPER(U61(X1, X2)) → PROPER(X2)
PROPER(U62(X)) → PROPER(X)
PROPER(U71(X1, X2)) → PROPER(X1)
PROPER(U71(X1, X2)) → PROPER(X2)
PROPER(and(X1, X2)) → PROPER(X1)
PROPER(and(X1, X2)) → PROPER(X2)
PROPER1 > U413
active1 > _2 > U513 > U413
active1 > U112 > U413
active1 > U213 > U413
active1 > U222 > U413
active1 > U312 > U413
active1 > U612 > U413
active1 > U621 > tt > U422 > U413
active1 > U621 > tt > U522 > U413
active1 > U712 > U413
active1 > and2 > U413
nil > tt > U422 > U413
nil > tt > U522 > U413
a > U413
e > U413
i > tt > U422 > U413
i > tt > U522 > U413
o > U413
u > U413
top > U413
PROPER1: [1]
_2: [2,1]
U112: [2,1]
U213: [1,3,2]
U222: [2,1]
U312: [1,2]
U413: [3,1,2]
U422: [1,2]
U513: [3,1,2]
U522: [2,1]
U612: [1,2]
U621: [1]
U712: [1,2]
and2: [1,2]
active1: [1]
nil: []
tt: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
PROPER(U12(X)) → PROPER(X)
PROPER(isNeList(X)) → PROPER(X)
PROPER(isList(X)) → PROPER(X)
PROPER(U23(X)) → PROPER(X)
PROPER(U32(X)) → PROPER(X)
PROPER(isQid(X)) → PROPER(X)
PROPER(U43(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(isNePal(X)) → PROPER(X)
PROPER(isPalListKind(X)) → PROPER(X)
PROPER(isPal(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(U12(X)) → PROPER(X)
PROPER(isNeList(X)) → PROPER(X)
PROPER(isList(X)) → PROPER(X)
PROPER(isQid(X)) → PROPER(X)
PROPER(isPal(X)) → PROPER(X)
U22 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > e > isNeList1
U22 > proper1 > i > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > i > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > i > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > i > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > i > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > i > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > o > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > o > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > o > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > o > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U22 > proper1 > o > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U22 > proper1 > o > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > e > isNeList1
U31 > proper1 > i > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > i > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > i > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > i > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > i > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > i > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > o > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > o > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > o > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > o > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
U31 > proper1 > o > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
U31 > proper1 > o > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U52 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > [PROPER1, isPal1] > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > U21 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > U62 > [active1, U511] > U612 > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > e > isNeList1
and > proper1 > i > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > i > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > i > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > i > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > i > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > i > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > o > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
and > proper1 > o > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > o > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > o > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
and > proper1 > o > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
and > proper1 > o > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
a > [U412, ok, top] > U121 > [mark, U421, u] > _2 > isNeList1
a > [U412, ok, top] > U121 > [mark, U421, u] > [nil, tt] > isNeList1
a > [U412, ok, top] > isList1 > [mark, U421, u] > _2 > isNeList1
a > [U412, ok, top] > isList1 > [mark, U421, u] > [nil, tt] > isNeList1
a > [U412, ok, top] > isQid1 > [mark, U421, u] > _2 > isNeList1
a > [U412, ok, top] > isQid1 > [mark, U421, u] > [nil, tt] > isNeList1
PROPER1: [1]
U121: [1]
isNeList1: [1]
isList1: [1]
isQid1: [1]
isPal1: [1]
active1: [1]
_2: [2,1]
mark: []
nil: []
tt: []
U21: []
U22: []
U31: []
U412: [1,2]
U421: [1]
U511: [1]
U52: []
U612: [2,1]
U62: []
and: []
a: []
e: []
i: []
o: []
u: []
proper1: [1]
ok: []
top: []
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))
PROPER(U23(X)) → PROPER(X)
PROPER(U32(X)) → PROPER(X)
PROPER(U43(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(isNePal(X)) → PROPER(X)
PROPER(isPalListKind(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(isPalListKind(X)) → PROPER(X)
nil > [i, o, ok] > active1 > isPalListKind1 > PROPER1 > mark
nil > [i, o, ok] > active1 > U212 > mark
nil > [i, o, ok] > active1 > isQid1 > mark
nil > [i, o, ok] > isPal1 > isPalListKind1 > PROPER1 > mark
U41 > [i, o, ok] > active1 > isPalListKind1 > PROPER1 > mark
U41 > [i, o, ok] > active1 > U212 > mark
U41 > [i, o, ok] > active1 > isQid1 > mark
U41 > [i, o, ok] > isPal1 > isPalListKind1 > PROPER1 > mark
U41 > proper1 > U212 > mark
U41 > proper1 > isQid1 > mark
U41 > proper1 > isPal1 > isPalListKind1 > PROPER1 > mark
a > tt > U52 > [i, o, ok] > active1 > isPalListKind1 > PROPER1 > mark
a > tt > U52 > [i, o, ok] > active1 > U212 > mark
a > tt > U52 > [i, o, ok] > active1 > isQid1 > mark
a > tt > U52 > [i, o, ok] > isPal1 > isPalListKind1 > PROPER1 > mark
a > tt > U52 > proper1 > U212 > mark
a > tt > U52 > proper1 > isQid1 > mark
a > tt > U52 > proper1 > isPal1 > isPalListKind1 > PROPER1 > mark
e > tt > U52 > [i, o, ok] > active1 > isPalListKind1 > PROPER1 > mark
e > tt > U52 > [i, o, ok] > active1 > U212 > mark
e > tt > U52 > [i, o, ok] > active1 > isQid1 > mark
e > tt > U52 > [i, o, ok] > isPal1 > isPalListKind1 > PROPER1 > mark
e > tt > U52 > proper1 > U212 > mark
e > tt > U52 > proper1 > isQid1 > mark
e > tt > U52 > proper1 > isPal1 > isPalListKind1 > PROPER1 > mark
u > [i, o, ok] > active1 > isPalListKind1 > PROPER1 > mark
u > [i, o, ok] > active1 > U212 > mark
u > [i, o, ok] > active1 > isQid1 > mark
u > [i, o, ok] > isPal1 > isPalListKind1 > PROPER1 > mark
top > active1 > isPalListKind1 > PROPER1 > mark
top > active1 > U212 > mark
top > active1 > isQid1 > mark
top > proper1 > U212 > mark
top > proper1 > isQid1 > mark
top > proper1 > isPal1 > isPalListKind1 > PROPER1 > mark
PROPER1: [1]
isPalListKind1: [1]
active1: [1]
mark: []
nil: []
tt: []
U212: [2,1]
isQid1: [1]
U41: []
U52: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
ok: []
top: []
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))
PROPER(U23(X)) → PROPER(X)
PROPER(U32(X)) → PROPER(X)
PROPER(U43(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(isNePal(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(isNePal(X)) → PROPER(X)
_ > isPalListKind > proper1 > U12 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
_ > isPalListKind > proper1 > U512 > isNeList > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
_ > isPalListKind > proper1 > U512 > U52 > isList1 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
_ > isPalListKind > proper1 > U71 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
_ > isPalListKind > proper1 > u > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
U31 > proper1 > U12 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
U31 > proper1 > U512 > isNeList > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
U31 > proper1 > U512 > U52 > isList1 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
U31 > proper1 > U71 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
U31 > proper1 > u > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
and > proper1 > U12 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
and > proper1 > U512 > isNeList > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
and > proper1 > U512 > U52 > isList1 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
and > proper1 > U71 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
and > proper1 > u > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
a > tt > U42 > proper1 > U12 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
a > tt > U42 > proper1 > U512 > isNeList > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
a > tt > U42 > proper1 > U512 > U52 > isList1 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
a > tt > U42 > proper1 > U71 > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
a > tt > U42 > proper1 > u > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
i > [PROPER1, isNePal1, mark, nil, U11, U22, isQid, U413, isPal1, e, o, top]
PROPER1: [1]
isNePal1: [1]
_: []
mark: []
nil: []
U11: []
tt: []
U12: []
isNeList: []
U22: []
isList1: [1]
U31: []
isQid: []
U413: [3,1,2]
U42: []
U512: [2,1]
U52: []
U71: []
and: []
isPalListKind: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
PROPER(U23(X)) → PROPER(X)
PROPER(U32(X)) → PROPER(X)
PROPER(U43(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(U43(X)) → PROPER(X)
nil > [mark, isList1, isQid, U511, e, u, top]
U311 > [PROPER1, U431, active1, 2] > U11 > U12 > [tt, a] > [mark, isList1, isQid, U511, e, u, top]
U311 > [PROPER1, U431, active1, 2] > U22 > [mark, isList1, isQid, U511, e, u, top]
U311 > [PROPER1, U431, active1, 2] > isPal > isPalListKind1 > [tt, a] > [mark, isList1, isQid, U511, e, u, top]
U52 > [PROPER1, U431, active1, 2] > U11 > U12 > [tt, a] > [mark, isList1, isQid, U511, e, u, top]
U52 > [PROPER1, U431, active1, 2] > U22 > [mark, isList1, isQid, U511, e, u, top]
U52 > [PROPER1, U431, active1, 2] > isPal > isPalListKind1 > [tt, a] > [mark, isList1, isQid, U511, e, u, top]
i > [mark, isList1, isQid, U511, e, u, top]
o > [mark, isList1, isQid, U511, e, u, top]
PROPER1: [1]
U431: [1]
active1: [1]
_2: [1,2]
mark: []
nil: []
U11: []
tt: []
U12: []
U22: []
isList1: [1]
U311: [1]
isQid: []
U511: [1]
U52: []
isPalListKind1: [1]
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
PROPER(U23(X)) → PROPER(X)
PROPER(U32(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(U72(X)) → PROPER(X)
[U721, active1, U431] > PROPER1 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > _2 > U413 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > [U212, isList] > [tt, isPalListKind1] > U121 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > [U212, isList] > [tt, isPalListKind1] > isNeList > U312 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > [U212, isList] > [tt, isPalListKind1] > U222 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > [U212, isList] > [tt, isPalListKind1] > U521 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > [U212, isList] > [tt, isPalListKind1] > U621 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > [U212, isList] > [tt, isPalListKind1] > isNePal > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > U513 > isNeList > U312 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > U513 > U521 > [isQid1, and2, isPal1, top]
[U721, active1, U431] > [mark, U421] > U711 > [isQid1, and2, isPal1, top]
nil > [isQid1, and2, isPal1, top]
a > [tt, isPalListKind1] > U121 > [isQid1, and2, isPal1, top]
a > [tt, isPalListKind1] > isNeList > U312 > [isQid1, and2, isPal1, top]
a > [tt, isPalListKind1] > U222 > [isQid1, and2, isPal1, top]
a > [tt, isPalListKind1] > U521 > [isQid1, and2, isPal1, top]
a > [tt, isPalListKind1] > U621 > [isQid1, and2, isPal1, top]
a > [tt, isPalListKind1] > isNePal > [isQid1, and2, isPal1, top]
e > [isQid1, and2, isPal1, top]
i > [isQid1, and2, isPal1, top]
o > [isQid1, and2, isPal1, top]
u > [isQid1, and2, isPal1, top]
PROPER1: [1]
U721: [1]
active1: [1]
_2: [2,1]
mark: []
nil: []
tt: []
U121: [1]
isNeList: []
U212: [2,1]
U222: [2,1]
isList: []
U312: [2,1]
isQid1: [1]
U413: [1,3,2]
U421: [1]
U431: [1]
U513: [1,2,3]
U521: [1]
U621: [1]
U711: [1]
isNePal: []
and2: [2,1]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
PROPER(U23(X)) → PROPER(X)
PROPER(U32(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(U23(X)) → PROPER(X)
PROPER1 > [2, top]
U411 > isList1 > [U11, isNeList] > and > [active1, U21, U311, U521] > U12 > [U231, mark, nil, isPal] > [2, top]
U411 > isList1 > [U11, isNeList] > and > [active1, U21, U311, U521] > U222 > [U231, mark, nil, isPal] > [2, top]
U411 > isList1 > [U11, isNeList] > and > [active1, U21, U311, U521] > isPalListKind1 > [U231, mark, nil, isPal] > [2, top]
U411 > isList1 > tt > [active1, U21, U311, U521] > U12 > [U231, mark, nil, isPal] > [2, top]
U411 > isList1 > tt > [active1, U21, U311, U521] > U222 > [U231, mark, nil, isPal] > [2, top]
U411 > isList1 > tt > [active1, U21, U311, U521] > isPalListKind1 > [U231, mark, nil, isPal] > [2, top]
U411 > U42 > [active1, U21, U311, U521] > U12 > [U231, mark, nil, isPal] > [2, top]
U411 > U42 > [active1, U21, U311, U521] > U222 > [U231, mark, nil, isPal] > [2, top]
U411 > U42 > [active1, U21, U311, U521] > isPalListKind1 > [U231, mark, nil, isPal] > [2, top]
a > tt > [active1, U21, U311, U521] > U12 > [U231, mark, nil, isPal] > [2, top]
a > tt > [active1, U21, U311, U521] > U222 > [U231, mark, nil, isPal] > [2, top]
a > tt > [active1, U21, U311, U521] > isPalListKind1 > [U231, mark, nil, isPal] > [2, top]
e > [U231, mark, nil, isPal] > [2, top]
i > [U231, mark, nil, isPal] > [2, top]
o > [2, top]
u > [2, top]
PROPER1: [1]
U231: [1]
active1: [1]
_2: [1,2]
mark: []
nil: []
U11: []
tt: []
U12: []
isNeList: []
U21: []
U222: [1,2]
isList1: [1]
U311: [1]
U411: [1]
U42: []
U521: [1]
and: []
isPalListKind1: [1]
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
PROPER(U32(X)) → PROPER(X)
PROPER(U53(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(U32(X)) → PROPER(X)
_ > isQid1 > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
_ > isPal > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U121 > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U231 > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U31 > U321 > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U31 > isQid1 > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U42 > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U521 > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
[U61, isNePal] > isQid1 > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
a > [tt, U22, i] > [mark, nil, isNeList, U21, U621, e, o, u, ok, top]
U321: [1]
_: []
mark: []
nil: []
tt: []
U121: [1]
isNeList: []
U21: []
U22: []
U231: [1]
U31: []
isQid1: [1]
U42: []
U521: [1]
U61: []
U621: [1]
isNePal: []
isPal: []
a: []
e: []
i: []
o: []
u: []
ok: []
top: []
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))
PROPER(U53(X)) → PROPER(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PROPER(U53(X)) → PROPER(X)
active1 > U531 > tt > isNeList > U512 > top
active1 > U531 > tt > isList > [mark, U222, and1] > U212 > top
active1 > U531 > tt > isList > [mark, U222, and1] > U512 > top
active1 > U531 > tt > isList > [mark, U222, and1] > U721 > top
active1 > _1 > [mark, U222, and1] > U212 > top
active1 > _1 > [mark, U222, and1] > U512 > top
active1 > _1 > [mark, U222, and1] > U721 > top
active1 > U23 > tt > isNeList > U512 > top
active1 > U23 > tt > isList > [mark, U222, and1] > U212 > top
active1 > U23 > tt > isList > [mark, U222, and1] > U512 > top
active1 > U23 > tt > isList > [mark, U222, and1] > U721 > top
active1 > U311 > [mark, U222, and1] > U212 > top
active1 > U311 > [mark, U222, and1] > U512 > top
active1 > U311 > [mark, U222, and1] > U721 > top
active1 > isQid1 > tt > isNeList > U512 > top
active1 > isQid1 > tt > isList > [mark, U222, and1] > U212 > top
active1 > isQid1 > tt > isList > [mark, U222, and1] > U512 > top
active1 > isQid1 > tt > isList > [mark, U222, and1] > U721 > top
active1 > isNePal > [mark, U222, and1] > U212 > top
active1 > isNePal > [mark, U222, and1] > U512 > top
active1 > isNePal > [mark, U222, and1] > U721 > top
active1 > isPal1 > tt > isNeList > U512 > top
active1 > isPal1 > tt > isList > [mark, U222, and1] > U212 > top
active1 > isPal1 > tt > isList > [mark, U222, and1] > U512 > top
active1 > isPal1 > tt > isList > [mark, U222, and1] > U721 > top
nil > top
a > top
e > tt > isNeList > U512 > top
e > tt > isList > [mark, U222, and1] > U212 > top
e > tt > isList > [mark, U222, and1] > U512 > top
e > tt > isList > [mark, U222, and1] > U721 > top
i > tt > isNeList > U512 > top
i > tt > isList > [mark, U222, and1] > U212 > top
i > tt > isList > [mark, U222, and1] > U512 > top
i > tt > isList > [mark, U222, and1] > U721 > top
o > tt > isNeList > U512 > top
o > tt > isList > [mark, U222, and1] > U212 > top
o > tt > isList > [mark, U222, and1] > U512 > top
o > tt > isList > [mark, U222, and1] > U721 > top
u > top
U531: [1]
active1: [1]
_1: [1]
mark: []
nil: []
tt: []
isNeList: []
U212: [1,2]
U222: [2,1]
isList: []
U23: []
U311: [1]
isQid1: [1]
U512: [1,2]
U721: [1]
isNePal: []
and1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
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))
ACTIVE(__(X1, X2)) → ACTIVE(X2)
ACTIVE(__(X1, X2)) → ACTIVE(X1)
ACTIVE(U11(X1, X2)) → ACTIVE(X1)
ACTIVE(U12(X)) → ACTIVE(X)
ACTIVE(U21(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U32(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U42(X1, X2)) → ACTIVE(X1)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U61(X1, X2)) → ACTIVE(X1)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(and(X1, X2)) → ACTIVE(X1)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(__(X1, X2)) → ACTIVE(X2)
ACTIVE(__(X1, X2)) → ACTIVE(X1)
ACTIVE(U11(X1, X2)) → ACTIVE(X1)
ACTIVE(U21(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U61(X1, X2)) → ACTIVE(X1)
isPalListKind > [active1, mark, nil] > _2 > ACTIVE1
isPalListKind > [active1, mark, nil] > _2 > U212
isPalListKind > [active1, mark, nil] > U111 > ACTIVE1
isPalListKind > [active1, mark, nil] > U111 > isNeList
isPalListKind > [active1, mark, nil] > U611 > ACTIVE1
isPalListKind > [active1, mark, nil] > isList1 > U212
isPalListKind > [active1, mark, nil] > isList1 > [tt, i]
isPalListKind > [active1, mark, nil] > isQid1 > [tt, i]
isPalListKind > [active1, mark, nil] > isPal > [tt, i]
a > [tt, i]
e > [tt, i]
o > [tt, i]
u > [tt, i]
top > [active1, mark, nil] > _2 > ACTIVE1
top > [active1, mark, nil] > _2 > U212
top > [active1, mark, nil] > U111 > ACTIVE1
top > [active1, mark, nil] > U111 > isNeList
top > [active1, mark, nil] > U611 > ACTIVE1
top > [active1, mark, nil] > isList1 > U212
top > [active1, mark, nil] > isList1 > [tt, i]
top > [active1, mark, nil] > isQid1 > [tt, i]
top > [active1, mark, nil] > isPal > [tt, i]
ACTIVE1: [1]
_2: [2,1]
U111: [1]
U212: [2,1]
U611: [1]
active1: [1]
mark: []
nil: []
tt: []
isNeList: []
isList1: [1]
isQid1: [1]
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
ACTIVE(U12(X)) → ACTIVE(X)
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U32(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U42(X1, X2)) → ACTIVE(X1)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(and(X1, X2)) → ACTIVE(X1)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U32(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2, X3)) → ACTIVE(X1)
ACTIVE1 > [mark, nil, top]
u > tt > [mark, nil, top]
proper1 > [U321, U411, active1] > U11 > [mark, nil, top]
proper1 > [U321, U411, active1] > tt > [mark, nil, top]
proper1 > [U321, U411, active1] > isNeList > isPalListKind > [mark, nil, top]
proper1 > [U321, U411, active1] > U21 > [mark, nil, top]
proper1 > [U321, U411, active1] > isNePal > isPalListKind > [mark, nil, top]
proper1 > a > tt > [mark, nil, top]
proper1 > e > tt > [mark, nil, top]
proper1 > i > tt > [mark, nil, top]
proper1 > o > tt > [mark, nil, top]
ACTIVE1: [1]
U321: [1]
U411: [1]
active1: [1]
mark: []
nil: []
U11: []
tt: []
isNeList: []
U21: []
isNePal: []
isPalListKind: []
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
ACTIVE(U12(X)) → ACTIVE(X)
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U42(X1, X2)) → ACTIVE(X1)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(and(X1, X2)) → ACTIVE(X1)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U12(X)) → ACTIVE(X)
ACTIVE(and(X1, X2)) → ACTIVE(X1)
nil > tt > isList > U11 > active1 > [ACTIVE1, and1] > [U121, mark, i]
nil > tt > isList > U11 > active1 > U41 > [U121, mark, i]
nil > tt > U32 > active1 > [ACTIVE1, and1] > [U121, mark, i]
nil > tt > U32 > active1 > U41 > [U121, mark, i]
nil > tt > isQid1 > [U121, mark, i]
proper1 > tt > isList > U11 > active1 > [ACTIVE1, and1] > [U121, mark, i]
proper1 > tt > isList > U11 > active1 > U41 > [U121, mark, i]
proper1 > tt > U32 > active1 > [ACTIVE1, and1] > [U121, mark, i]
proper1 > tt > U32 > active1 > U41 > [U121, mark, i]
proper1 > tt > isQid1 > [U121, mark, i]
proper1 > isPal > isPalListKind > [ACTIVE1, and1] > [U121, mark, i]
proper1 > a > [U121, mark, i]
proper1 > e > [U121, mark, i]
proper1 > o > [U121, mark, i]
proper1 > u > [U121, mark, i]
top > [U121, mark, i]
ACTIVE1: [1]
U121: [1]
and1: [1]
active1: [1]
mark: []
nil: []
U11: []
tt: []
isList: []
U32: []
isQid1: [1]
U41: []
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U42(X1, X2)) → ACTIVE(X1)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U42(X1, X2)) → ACTIVE(X1)
U111 > [U421, active1] > isList1 > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
U111 > [U421, active1] > isPal1 > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
isNePal1 > isPal1 > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
a > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
e > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
i > [1, mark, nil, and]
o > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
u > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
top > [U421, active1] > isList1 > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
top > [U421, active1] > isPal1 > [tt, isNeList, isQid, isPalListKind] > [1, mark, nil, and]
U421: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U111: [1]
tt: []
isNeList: []
isList1: [1]
isQid: []
isNePal1: [1]
and: []
isPalListKind: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U22(X1, X2)) → ACTIVE(X1)
ACTIVE(U31(X1, X2)) → ACTIVE(X1)
ACTIVE(U51(X1, X2, X3)) → ACTIVE(X1)
U512 > [1, isNeList, U411] > [mark, isList, isQid1, U61, isPalListKind1, isPal1, e] > U311 > U222
U512 > [1, isNeList, U411] > [mark, isList, isQid1, U61, isPalListKind1, isPal1, e] > U213 > U222
U512 > [1, isNeList, U411] > [mark, isList, isQid1, U61, isPalListKind1, isPal1, e] > top > U222
nil > U222
[tt, isNePal] > [1, isNeList, U411] > [mark, isList, isQid1, U61, isPalListKind1, isPal1, e] > U311 > U222
[tt, isNePal] > [1, isNeList, U411] > [mark, isList, isQid1, U61, isPalListKind1, isPal1, e] > U213 > U222
[tt, isNePal] > [1, isNeList, U411] > [mark, isList, isQid1, U61, isPalListKind1, isPal1, e] > top > U222
a > U222
i > U222
o > U222
u > U222
U222: [1,2]
U311: [1]
U512: [1,2]
_1: [1]
mark: []
nil: []
tt: []
isNeList: []
U213: [2,3,1]
isList: []
isQid1: [1]
U411: [1]
U61: []
isNePal: []
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U53(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U53(X)) → ACTIVE(X)
active1 > U531 > tt > [mark, U422, ok, top]
active1 > _1 > and > [mark, U422, ok, top]
active1 > U112 > [mark, U422, ok, top]
active1 > isNeList1 > U411 > [mark, U422, ok, top]
active1 > isNeList1 > U513 > [mark, U422, ok, top]
active1 > isNeList1 > and > [mark, U422, ok, top]
active1 > U211 > [mark, U422, ok, top]
active1 > U221 > [mark, U422, ok, top]
active1 > U312 > [mark, U422, ok, top]
active1 > isNePal1 > U611 > [mark, U422, ok, top]
active1 > isNePal1 > and > [mark, U422, ok, top]
nil > [mark, U422, ok, top]
isList > U112 > [mark, U422, ok, top]
isList > U211 > [mark, U422, ok, top]
isList > isPalListKind > tt > [mark, U422, ok, top]
isList > isPalListKind > and > [mark, U422, ok, top]
isPal > isPalListKind > tt > [mark, U422, ok, top]
isPal > isPalListKind > and > [mark, U422, ok, top]
a > tt > [mark, U422, ok, top]
e > tt > [mark, U422, ok, top]
i > [mark, U422, ok, top]
o > tt > [mark, U422, ok, top]
u > tt > [mark, U422, ok, top]
U531: [1]
active1: [1]
_1: [1]
mark: []
nil: []
U112: [2,1]
tt: []
isNeList1: [1]
U211: [1]
U221: [1]
isList: []
U312: [2,1]
U411: [1]
U422: [1,2]
U513: [2,3,1]
U611: [1]
isNePal1: [1]
and: []
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
ok: []
top: []
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))
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U23(X)) → ACTIVE(X)
ACTIVE(U52(X1, X2)) → ACTIVE(X1)
[U231, U521, active1] > _2 > U211 > [mark, e]
[U231, U521, active1] > _2 > U41 > [mark, e]
[U231, U521, active1] > _2 > isPal1 > isPalListKind > [mark, e]
[U231, U521, active1] > [tt, o] > U121 > [mark, e]
[U231, U521, active1] > [tt, o] > U32 > [mark, e]
[U231, U521, active1] > U31 > [mark, e]
[U231, U521, active1] > isNePal > isPal1 > isPalListKind > [mark, e]
nil > [mark, e]
a > [mark, e]
i > [mark, e]
u > [mark, e]
top > [mark, e]
U231: [1]
U521: [1]
active1: [1]
_2: [2,1]
mark: []
nil: []
tt: []
U121: [1]
U211: [1]
U31: []
U32: []
U41: []
isNePal: []
isPalListKind: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
isPalListKind > [, tt, U421, proper1] > nil > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > U211 > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > U321 > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > U413 > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > U51 > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > and > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > isPal1 > [ACTIVE1, U711] > isNePal1 > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > a > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > e > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > i > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > o > [mark, U612, top]
isPalListKind > [, tt, U421, proper1] > u > [mark, U612, top]
ACTIVE1: [1]
U711: [1]
_: []
mark: []
nil: []
tt: []
U211: [1]
U321: [1]
U413: [3,1,2]
U421: [1]
U51: []
U612: [2,1]
isNePal1: [1]
and: []
isPalListKind: []
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U62(X)) → ACTIVE(X)
ACTIVE1 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > U621 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > U11 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > U212 > U22 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > U412 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > U53 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > U712 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
tt > [U31, isQid] > active1 > isNePal > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > U621 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > U11 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > U212 > U22 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > U412 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > U53 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > U712 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > U61 > [U31, isQid] > active1 > isNePal > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > U621 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > U11 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > U212 > U22 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > U412 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > U53 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > U712 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > and > active1 > isNePal > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
proper1 > isPal > U712 > [mark, nil, U321, U421, U51, U52, isPalListKind, a, e, i, o, u, ok, top]
ACTIVE1: [1]
U621: [1]
active1: [1]
mark: []
nil: []
U11: []
tt: []
U212: [2,1]
U22: []
U31: []
U321: [1]
isQid: []
U412: [2,1]
U421: [1]
U51: []
U52: []
U53: []
U61: []
U712: [2,1]
isNePal: []
and: []
isPalListKind: []
isPal: []
a: []
e: []
i: []
o: []
u: []
proper1: [1]
ok: []
top: []
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))
ACTIVE(U43(X)) → ACTIVE(X)
ACTIVE(U72(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE1 > [mark, nil, U311, U51, e, i, top]
U111 > U121 > tt > U721 > [mark, nil, U311, U51, e, i, top]
U111 > U121 > tt > U321 > [mark, nil, U311, U51, e, i, top]
U111 > U121 > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
U212 > [mark, nil, U311, U51, e, i, top]
U23 > tt > U721 > [mark, nil, U311, U51, e, i, top]
U23 > tt > U321 > [mark, nil, U311, U51, e, i, top]
U23 > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
U413 > [mark, nil, U311, U51, e, i, top]
U53 > tt > U721 > [mark, nil, U311, U51, e, i, top]
U53 > tt > U321 > [mark, nil, U311, U51, e, i, top]
U53 > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
U612 > isQid > tt > U721 > [mark, nil, U311, U51, e, i, top]
U612 > isQid > tt > U321 > [mark, nil, U311, U51, e, i, top]
U612 > isQid > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
U62 > tt > U721 > [mark, nil, U311, U51, e, i, top]
U62 > tt > U321 > [mark, nil, U311, U51, e, i, top]
U62 > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
isPal > tt > U721 > [mark, nil, U311, U51, e, i, top]
isPal > tt > U321 > [mark, nil, U311, U51, e, i, top]
isPal > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
isPal > U712 > U721 > [mark, nil, U311, U51, e, i, top]
isPal > U712 > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
a > [mark, nil, U311, U51, e, i, top]
o > tt > U721 > [mark, nil, U311, U51, e, i, top]
o > tt > U321 > [mark, nil, U311, U51, e, i, top]
o > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
u > tt > U721 > [mark, nil, U311, U51, e, i, top]
u > tt > U321 > [mark, nil, U311, U51, e, i, top]
u > tt > isNePal > [isNeList, and] > [mark, nil, U311, U51, e, i, top]
ACTIVE1: [1]
U721: [1]
mark: []
nil: []
U111: [1]
tt: []
U121: [1]
isNeList: []
U212: [2,1]
U23: []
U311: [1]
U321: [1]
isQid: []
U413: [1,3,2]
U51: []
U53: []
U612: [2,1]
U62: []
U712: [2,1]
isNePal: []
and: []
isPal: []
a: []
e: []
i: []
o: []
u: []
top: []
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))
ACTIVE(U43(X)) → ACTIVE(X)
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVE(U43(X)) → ACTIVE(X)
U431 > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U431 > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U431 > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U431 > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U431 > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U431 > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U431 > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U431 > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U431 > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
nil > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
nil > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
nil > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U222 > [isList, and1] > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U222 > [isList, and1] > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U222 > [isList, and1] > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U222 > [isList, and1] > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U222 > [isList, and1] > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U222 > [isList, and1] > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U222 > [isList, and1] > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U222 > [isList, and1] > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U222 > [isList, and1] > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U222 > [isList, and1] > U213 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U222 > [isList, and1] > U213 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U222 > [isList, and1] > U213 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U23 > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U23 > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U23 > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U23 > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U23 > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U23 > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U23 > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U23 > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U23 > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U32 > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U32 > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U32 > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U32 > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U32 > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U32 > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U32 > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U32 > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U32 > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U53 > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U53 > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U53 > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U53 > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U53 > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U53 > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U53 > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U53 > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U53 > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U62 > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U62 > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U62 > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U62 > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U62 > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U62 > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U62 > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
U62 > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
U62 > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
isPal > tt > U121 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
isPal > tt > U121 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
isPal > tt > U121 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
isPal > tt > isQid > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
isPal > tt > isQid > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
isPal > tt > isQid > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
isPal > tt > U521 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
isPal > tt > U521 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
isPal > tt > U521 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
isPal > U71 > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
isPal > U71 > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
isPal > U71 > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
i > [U42, a, e, o, u, ok] > _1 > [mark, U412, top]
i > [U42, a, e, o, u, ok] > U112 > [mark, U412, top]
i > [U42, a, e, o, u, ok] > U312 > [mark, U412, top]
U431: [1]
_1: [1]
mark: []
nil: []
U112: [2,1]
tt: []
U121: [1]
U213: [3,1,2]
U222: [1,2]
isList: []
U23: []
U312: [2,1]
U32: []
isQid: []
U412: [2,1]
U42: []
U521: [1]
U53: []
U62: []
U71: []
and1: [1]
isPal: []
a: []
e: []
i: []
o: []
u: []
ok: []
top: []
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))
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))
TOP(ok(X)) → TOP(active(X))
TOP(mark(X)) → TOP(proper(X))
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
TOP(mark(X)) → TOP(proper(X))
_2 > U213 > [U222, isList1, U522] > [U112, isNeList1, U422] > U121 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > U213 > [U222, isList1, U522] > [U112, isNeList1, U422] > U121 > [tt, isNePal1] > isPalListKind1
_2 > U213 > [U222, isList1, U522] > [U112, isNeList1, U422] > U312 > [mark1, U321, U431, U531, U621, U721]
_2 > U213 > [U222, isList1, U522] > [U112, isNeList1, U422] > and2 > [mark1, U321, U431, U531, U621, U721]
_2 > U213 > [U222, isList1, U522] > U231 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > U213 > [U222, isList1, U522] > U231 > [tt, isNePal1] > isPalListKind1
_2 > U413 > [U222, isList1, U522] > [U112, isNeList1, U422] > U121 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > U413 > [U222, isList1, U522] > [U112, isNeList1, U422] > U121 > [tt, isNePal1] > isPalListKind1
_2 > U413 > [U222, isList1, U522] > [U112, isNeList1, U422] > U312 > [mark1, U321, U431, U531, U621, U721]
_2 > U413 > [U222, isList1, U522] > [U112, isNeList1, U422] > and2 > [mark1, U321, U431, U531, U621, U721]
_2 > U413 > [U222, isList1, U522] > U231 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > U413 > [U222, isList1, U522] > U231 > [tt, isNePal1] > isPalListKind1
_2 > U513 > [U222, isList1, U522] > [U112, isNeList1, U422] > U121 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > U513 > [U222, isList1, U522] > [U112, isNeList1, U422] > U121 > [tt, isNePal1] > isPalListKind1
_2 > U513 > [U222, isList1, U522] > [U112, isNeList1, U422] > U312 > [mark1, U321, U431, U531, U621, U721]
_2 > U513 > [U222, isList1, U522] > [U112, isNeList1, U422] > and2 > [mark1, U321, U431, U531, U621, U721]
_2 > U513 > [U222, isList1, U522] > U231 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > U513 > [U222, isList1, U522] > U231 > [tt, isNePal1] > isPalListKind1
_2 > isPal1 > U712 > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
_2 > isPal1 > U712 > [tt, isNePal1] > isPalListKind1
nil > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
nil > [tt, isNePal1] > isPalListKind1
a > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
a > [tt, isNePal1] > isPalListKind1
e > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
e > [tt, isNePal1] > isPalListKind1
i > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
i > [tt, isNePal1] > isPalListKind1
o > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
o > [tt, isNePal1] > isPalListKind1
u > [tt, isNePal1] > U612 > [mark1, U321, U431, U531, U621, U721]
u > [tt, isNePal1] > isPalListKind1
TOP1: [1]
mark1: [1]
_2: [1,2]
nil: []
U112: [2,1]
tt: []
U121: [1]
isNeList1: [1]
U213: [1,2,3]
U222: [2,1]
isList1: [1]
U231: [1]
U312: [1,2]
U321: [1]
U413: [2,3,1]
U422: [2,1]
U431: [1]
U513: [2,1,3]
U522: [2,1]
U531: [1]
U612: [2,1]
U621: [1]
U712: [1,2]
U721: [1]
isNePal1: [1]
and2: [1,2]
isPalListKind1: [1]
isPal1: [1]
a: []
e: []
i: []
o: []
u: []
top: []
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))
TOP(ok(X)) → TOP(active(X))
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))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
TOP(ok(X)) → TOP(active(X))
TOP1 > [mark, u]
proper1 > nil > [mark, u]
proper1 > U521 > [ok1, isNeList1, U221, U231] > tt > [mark, u]
proper1 > U521 > [ok1, isNeList1, U221, U231] > top > [mark, u]
proper1 > U611 > [ok1, isNeList1, U221, U231] > tt > [mark, u]
proper1 > U611 > [ok1, isNeList1, U221, U231] > top > [mark, u]
proper1 > isNePal1 > [ok1, isNeList1, U221, U231] > tt > [mark, u]
proper1 > isNePal1 > [ok1, isNeList1, U221, U231] > top > [mark, u]
proper1 > a > [mark, u]
proper1 > e > [mark, u]
proper1 > i > [mark, u]
proper1 > o > [ok1, isNeList1, U221, U231] > tt > [mark, u]
proper1 > o > [ok1, isNeList1, U221, U231] > top > [mark, u]
TOP1: [1]
ok1: [1]
mark: []
nil: []
tt: []
isNeList1: [1]
U221: [1]
U231: [1]
U521: [1]
U611: [1]
isNePal1: [1]
a: []
e: []
i: []
o: []
u: []
proper1: [1]
top: []
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))
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))