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 QDPOrderProof (⇔)
↳34 QDP
↳35 PisEmptyProof (⇔)
↳36 TRUE
↳37 QDP
↳38 QDPOrderProof (⇔)
↳39 QDP
↳40 QDPOrderProof (⇔)
↳41 QDP
↳42 PisEmptyProof (⇔)
↳43 TRUE
↳44 QDP
↳45 QDPOrderProof (⇔)
↳46 QDP
↳47 QDPOrderProof (⇔)
↳48 QDP
↳49 PisEmptyProof (⇔)
↳50 TRUE
↳51 QDP
↳52 QDPOrderProof (⇔)
↳53 QDP
↳54 QDPOrderProof (⇔)
↳55 QDP
↳56 PisEmptyProof (⇔)
↳57 TRUE
↳58 QDP
↳59 QDPOrderProof (⇔)
↳60 QDP
↳61 QDPOrderProof (⇔)
↳62 QDP
↳63 PisEmptyProof (⇔)
↳64 TRUE
↳65 QDP
↳66 QDPOrderProof (⇔)
↳67 QDP
↳68 QDPOrderProof (⇔)
↳69 QDP
↳70 PisEmptyProof (⇔)
↳71 TRUE
↳72 QDP
↳73 QDPOrderProof (⇔)
↳74 QDP
↳75 QDPOrderProof (⇔)
↳76 QDP
↳77 PisEmptyProof (⇔)
↳78 TRUE
↳79 QDP
↳80 QDPOrderProof (⇔)
↳81 QDP
↳82 QDPOrderProof (⇔)
↳83 QDP
↳84 PisEmptyProof (⇔)
↳85 TRUE
↳86 QDP
↳87 QDPOrderProof (⇔)
↳88 QDP
↳89 QDPOrderProof (⇔)
↳90 QDP
↳91 PisEmptyProof (⇔)
↳92 TRUE
↳93 QDP
↳94 QDPOrderProof (⇔)
↳95 QDP
↳96 QDPOrderProof (⇔)
↳97 QDP
↳98 PisEmptyProof (⇔)
↳99 TRUE
↳100 QDP
↳101 QDPOrderProof (⇔)
↳102 QDP
↳103 QDPOrderProof (⇔)
↳104 QDP
↳105 PisEmptyProof (⇔)
↳106 TRUE
↳107 QDP
↳108 QDPOrderProof (⇔)
↳109 QDP
↳110 QDPOrderProof (⇔)
↳111 QDP
↳112 PisEmptyProof (⇔)
↳113 TRUE
↳114 QDP
↳115 QDPOrderProof (⇔)
↳116 QDP
↳117 QDPOrderProof (⇔)
↳118 QDP
↳119 PisEmptyProof (⇔)
↳120 TRUE
↳121 QDP
↳122 QDPOrderProof (⇔)
↳123 QDP
↳124 QDPOrderProof (⇔)
↳125 QDP
↳126 QDPOrderProof (⇔)
↳127 QDP
↳128 QDPOrderProof (⇔)
↳129 QDP
↳130 QDPOrderProof (⇔)
↳131 QDP
↳132 QDPOrderProof (⇔)
↳133 QDP
↳134 QDPOrderProof (⇔)
↳135 QDP
↳136 QDPOrderProof (⇔)
↳137 QDP
↳138 QDPOrderProof (⇔)
↳139 QDP
↳140 QDPOrderProof (⇔)
↳141 QDP
↳142 QDPOrderProof (⇔)
↳143 QDP
↳144 PisEmptyProof (⇔)
↳145 TRUE
↳146 QDP
↳147 QDPOrderProof (⇔)
↳148 QDP
↳149 QDPOrderProof (⇔)
↳150 QDP
↳151 QDPOrderProof (⇔)
↳152 QDP
↳153 QDPOrderProof (⇔)
↳154 QDP
↳155 QDPOrderProof (⇔)
↳156 QDP
↳157 QDPOrderProof (⇔)
↳158 QDP
↳159 QDPOrderProof (⇔)
↳160 QDP
↳161 QDPOrderProof (⇔)
↳162 QDP
↳163 QDPOrderProof (⇔)
↳164 QDP
↳165 QDPOrderProof (⇔)
↳166 QDP
↳167 PisEmptyProof (⇔)
↳168 TRUE
↳169 QDP
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U21(tt, V2)) → U221(isList(V2))
ACTIVE(U21(tt, V2)) → ISLIST(V2)
ACTIVE(U41(tt, V2)) → U421(isNeList(V2))
ACTIVE(U41(tt, V2)) → ISNELIST(V2)
ACTIVE(U51(tt, V2)) → U521(isList(V2))
ACTIVE(U51(tt, V2)) → ISLIST(V2)
ACTIVE(U71(tt, P)) → U721(isPal(P))
ACTIVE(U71(tt, P)) → ISPAL(P)
ACTIVE(isList(V)) → U111(isNeList(V))
ACTIVE(isList(V)) → ISNELIST(V)
ACTIVE(isList(__(V1, V2))) → U211(isList(V1), V2)
ACTIVE(isList(__(V1, V2))) → ISLIST(V1)
ACTIVE(isNeList(V)) → U311(isQid(V))
ACTIVE(isNeList(V)) → ISQID(V)
ACTIVE(isNeList(__(V1, V2))) → U411(isList(V1), V2)
ACTIVE(isNeList(__(V1, V2))) → ISLIST(V1)
ACTIVE(isNeList(__(V1, V2))) → U511(isNeList(V1), V2)
ACTIVE(isNeList(__(V1, V2))) → ISNELIST(V1)
ACTIVE(isNePal(V)) → U611(isQid(V))
ACTIVE(isNePal(V)) → ISQID(V)
ACTIVE(isNePal(__(I, __(P, I)))) → U711(isQid(I), P)
ACTIVE(isNePal(__(I, __(P, I)))) → ISQID(I)
ACTIVE(isPal(V)) → U811(isNePal(V))
ACTIVE(isPal(V)) → ISNEPAL(V)
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(X)) → U111(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U21(X1, X2)) → U211(active(X1), X2)
ACTIVE(U21(X1, X2)) → ACTIVE(X1)
ACTIVE(U22(X)) → U221(active(X))
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → U311(active(X))
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2)) → U411(active(X1), X2)
ACTIVE(U41(X1, X2)) → ACTIVE(X1)
ACTIVE(U42(X)) → U421(active(X))
ACTIVE(U42(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2)) → U511(active(X1), X2)
ACTIVE(U51(X1, X2)) → ACTIVE(X1)
ACTIVE(U52(X)) → U521(active(X))
ACTIVE(U52(X)) → ACTIVE(X)
ACTIVE(U61(X)) → U611(active(X))
ACTIVE(U61(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(U81(X)) → U811(active(X))
ACTIVE(U81(X)) → ACTIVE(X)
__1(mark(X1), X2) → __1(X1, X2)
__1(X1, mark(X2)) → __1(X1, X2)
U111(mark(X)) → U111(X)
U211(mark(X1), X2) → U211(X1, X2)
U221(mark(X)) → U221(X)
U311(mark(X)) → U311(X)
U411(mark(X1), X2) → U411(X1, X2)
U421(mark(X)) → U421(X)
U511(mark(X1), X2) → U511(X1, X2)
U521(mark(X)) → U521(X)
U611(mark(X)) → U611(X)
U711(mark(X1), X2) → U711(X1, X2)
U721(mark(X)) → U721(X)
U811(mark(X)) → U811(X)
PROPER(__(X1, X2)) → __1(proper(X1), proper(X2))
PROPER(__(X1, X2)) → PROPER(X1)
PROPER(__(X1, X2)) → PROPER(X2)
PROPER(U11(X)) → U111(proper(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U21(X1, X2)) → U211(proper(X1), proper(X2))
PROPER(U21(X1, X2)) → PROPER(X1)
PROPER(U21(X1, X2)) → PROPER(X2)
PROPER(U22(X)) → U221(proper(X))
PROPER(U22(X)) → PROPER(X)
PROPER(isList(X)) → ISLIST(proper(X))
PROPER(isList(X)) → PROPER(X)
PROPER(U31(X)) → U311(proper(X))
PROPER(U31(X)) → PROPER(X)
PROPER(U41(X1, X2)) → U411(proper(X1), proper(X2))
PROPER(U41(X1, X2)) → PROPER(X1)
PROPER(U41(X1, X2)) → PROPER(X2)
PROPER(U42(X)) → U421(proper(X))
PROPER(U42(X)) → PROPER(X)
PROPER(isNeList(X)) → ISNELIST(proper(X))
PROPER(isNeList(X)) → PROPER(X)
PROPER(U51(X1, X2)) → U511(proper(X1), proper(X2))
PROPER(U51(X1, X2)) → PROPER(X1)
PROPER(U51(X1, X2)) → PROPER(X2)
PROPER(U52(X)) → U521(proper(X))
PROPER(U52(X)) → PROPER(X)
PROPER(U61(X)) → U611(proper(X))
PROPER(U61(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(isPal(X)) → ISPAL(proper(X))
PROPER(isPal(X)) → PROPER(X)
PROPER(U81(X)) → U811(proper(X))
PROPER(U81(X)) → PROPER(X)
PROPER(isQid(X)) → ISQID(proper(X))
PROPER(isQid(X)) → PROPER(X)
PROPER(isNePal(X)) → ISNEPAL(proper(X))
PROPER(isNePal(X)) → PROPER(X)
__1(ok(X1), ok(X2)) → __1(X1, X2)
U111(ok(X)) → U111(X)
U211(ok(X1), ok(X2)) → U211(X1, X2)
U221(ok(X)) → U221(X)
ISLIST(ok(X)) → ISLIST(X)
U311(ok(X)) → U311(X)
U411(ok(X1), ok(X2)) → U411(X1, X2)
U421(ok(X)) → U421(X)
ISNELIST(ok(X)) → ISNELIST(X)
U511(ok(X1), ok(X2)) → U511(X1, X2)
U521(ok(X)) → U521(X)
U611(ok(X)) → U611(X)
U711(ok(X1), ok(X2)) → U711(X1, X2)
U721(ok(X)) → U721(X)
ISPAL(ok(X)) → ISPAL(X)
U811(ok(X)) → U811(X)
ISQID(ok(X)) → ISQID(X)
ISNEPAL(ok(X)) → ISNEPAL(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U811(ok(X)) → U811(X)
U811(mark(X)) → U811(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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.
U811(mark(X)) → U811(X)
active1 > _2 > mark1 > top > U81^11
active1 > _2 > isList > U81^11
active1 > _2 > isNeList > U81^11
active1 > _2 > isQid > U81^11
active1 > tt > isPal > U81^11
active1 > isNePal > isQid > U81^11
nil > tt > isPal > U81^11
a > tt > isPal > U81^11
e > tt > isPal > U81^11
i > tt > isPal > U81^11
o > tt > isPal > U81^11
u > tt > isPal > U81^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U811(ok(X)) → U811(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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.
U811(ok(X)) → U811(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > _2 > mark1 > top > U72^11
active1 > _2 > isList > U72^11
active1 > _2 > isNeList > U72^11
active1 > _2 > isQid > U72^11
active1 > tt > isPal > U72^11
active1 > isNePal > isQid > U72^11
nil > tt > isPal > U72^11
a > tt > isPal > U72^11
e > tt > isPal > U72^11
i > tt > isPal > U72^11
o > tt > isPal > U72^11
u > tt > isPal > U72^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U721(ok(X)) → U721(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > mark > _2 > isNeList1 > ok1
active1 > mark > _2 > isQid1 > ok1
active1 > mark > top
active1 > tt > isPal1 > ok1
active1 > isNePal1 > isQid1 > ok1
nil > mark > _2 > isNeList1 > ok1
nil > mark > _2 > isQid1 > ok1
nil > mark > top
nil > tt > isPal1 > ok1
proper1 > _2 > isNeList1 > ok1
proper1 > _2 > isQid1 > ok1
proper1 > isNePal1 > isQid1 > ok1
proper1 > a > tt > isPal1 > ok1
proper1 > e > tt > isPal1 > ok1
proper1 > i > tt > isPal1 > ok1
proper1 > o > tt > isPal1 > ok1
proper1 > u > tt > isPal1 > ok1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > _2 > U211 > mark1 > isNeList
active1 > _2 > U211 > isList > tt > isNeList
active1 > _2 > U411 > mark1 > isNeList
active1 > _2 > U712 > mark1 > isNeList
active1 > _2 > isQid > mark1 > isNeList
active1 > _2 > isQid > tt > isNeList
active1 > isPal1 > mark1 > isNeList
active1 > isPal1 > tt > isNeList
active1 > isPal1 > isNePal1 > isNeList
nil > mark1 > isNeList
nil > tt > isNeList
a > mark1 > isNeList
a > tt > isNeList
e > mark1 > isNeList
e > tt > isNeList
i > mark1 > isNeList
i > tt > isNeList
o > mark1 > isNeList
o > tt > isNeList
u > mark1 > isNeList
u > tt > isNeList
top > isNeList
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U611(ok(X)) → U611(X)
U611(mark(X)) → U611(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U611(X)
active1 > _2 > mark1 > top > U61^11
active1 > _2 > isList > U61^11
active1 > _2 > isNeList > U61^11
active1 > _2 > isQid > U61^11
active1 > tt > isPal > U61^11
active1 > isNePal > isQid > U61^11
nil > tt > isPal > U61^11
a > tt > isPal > U61^11
e > tt > isPal > U61^11
i > tt > isPal > U61^11
o > tt > isPal > U61^11
u > tt > isPal > U61^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U611(ok(X)) → U611(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U611(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U521(ok(X)) → U521(X)
U521(mark(X)) → U521(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U521(X)
active1 > _2 > mark1 > top > U52^11
active1 > _2 > isList > U52^11
active1 > _2 > isNeList > U52^11
active1 > _2 > isQid > U52^11
active1 > tt > isPal > U52^11
active1 > isNePal > isQid > U52^11
nil > tt > isPal > U52^11
a > tt > isPal > U52^11
e > tt > isPal > U52^11
i > tt > isPal > U52^11
o > tt > isPal > U52^11
u > tt > isPal > U52^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U521(ok(X)) → U521(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U521(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U511(ok(X1), ok(X2)) → U511(X1, X2)
U511(mark(X1), X2) → U511(X1, X2)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → U511(X1, X2)
active1 > mark > _2 > isNeList1 > ok1
active1 > mark > _2 > isQid1 > ok1
active1 > mark > top
active1 > tt > isPal1 > ok1
active1 > isNePal1 > isQid1 > ok1
nil > mark > _2 > isNeList1 > ok1
nil > mark > _2 > isQid1 > ok1
nil > mark > top
nil > tt > isPal1 > ok1
proper1 > _2 > isNeList1 > ok1
proper1 > _2 > isQid1 > ok1
proper1 > isNePal1 > isQid1 > ok1
proper1 > a > tt > isPal1 > ok1
proper1 > e > tt > isPal1 > ok1
proper1 > i > tt > isPal1 > ok1
proper1 > o > tt > isPal1 > ok1
proper1 > u > tt > isPal1 > ok1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U511(mark(X1), X2) → U511(X1, X2)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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) → U511(X1, X2)
active1 > _2 > U211 > mark1 > isNeList
active1 > _2 > U211 > isList > tt > isNeList
active1 > _2 > U411 > mark1 > isNeList
active1 > _2 > U712 > mark1 > isNeList
active1 > _2 > isQid > mark1 > isNeList
active1 > _2 > isQid > tt > isNeList
active1 > isPal1 > mark1 > isNeList
active1 > isPal1 > tt > isNeList
active1 > isPal1 > isNePal1 > isNeList
nil > mark1 > isNeList
nil > tt > isNeList
a > mark1 > isNeList
a > tt > isNeList
e > mark1 > isNeList
e > tt > isNeList
i > mark1 > isNeList
i > tt > isNeList
o > mark1 > isNeList
o > tt > isNeList
u > mark1 > isNeList
u > tt > isNeList
top > isNeList
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U421(ok(X)) → U421(X)
U421(mark(X)) → U421(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U421(X)
active1 > _2 > mark1 > top > U42^11
active1 > _2 > isList > U42^11
active1 > _2 > isNeList > U42^11
active1 > _2 > isQid > U42^11
active1 > tt > isPal > U42^11
active1 > isNePal > isQid > U42^11
nil > tt > isPal > U42^11
a > tt > isPal > U42^11
e > tt > isPal > U42^11
i > tt > isPal > U42^11
o > tt > isPal > U42^11
u > tt > isPal > U42^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U421(ok(X)) → U421(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U421(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U411(ok(X1), ok(X2)) → U411(X1, X2)
U411(mark(X1), X2) → U411(X1, X2)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → U411(X1, X2)
active1 > mark > _2 > isNeList1 > ok1
active1 > mark > _2 > isQid1 > ok1
active1 > mark > top
active1 > tt > isPal1 > ok1
active1 > isNePal1 > isQid1 > ok1
nil > mark > _2 > isNeList1 > ok1
nil > mark > _2 > isQid1 > ok1
nil > mark > top
nil > tt > isPal1 > ok1
proper1 > _2 > isNeList1 > ok1
proper1 > _2 > isQid1 > ok1
proper1 > isNePal1 > isQid1 > ok1
proper1 > a > tt > isPal1 > ok1
proper1 > e > tt > isPal1 > ok1
proper1 > i > tt > isPal1 > ok1
proper1 > o > tt > isPal1 > ok1
proper1 > u > tt > isPal1 > ok1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U411(mark(X1), X2) → U411(X1, X2)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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) → U411(X1, X2)
active1 > _2 > U211 > mark1 > isNeList
active1 > _2 > U211 > isList > tt > isNeList
active1 > _2 > U411 > mark1 > isNeList
active1 > _2 > U712 > mark1 > isNeList
active1 > _2 > isQid > mark1 > isNeList
active1 > _2 > isQid > tt > isNeList
active1 > isPal1 > mark1 > isNeList
active1 > isPal1 > tt > isNeList
active1 > isPal1 > isNePal1 > isNeList
nil > mark1 > isNeList
nil > tt > isNeList
a > mark1 > isNeList
a > tt > isNeList
e > mark1 > isNeList
e > tt > isNeList
i > mark1 > isNeList
i > tt > isNeList
o > mark1 > isNeList
o > tt > isNeList
u > mark1 > isNeList
u > tt > isNeList
top > isNeList
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U311(ok(X)) → U311(X)
U311(mark(X)) → U311(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U311(X)
active1 > _2 > mark1 > top > U31^11
active1 > _2 > isList > U31^11
active1 > _2 > isNeList > U31^11
active1 > _2 > isQid > U31^11
active1 > tt > isPal > U31^11
active1 > isNePal > isQid > U31^11
nil > tt > isPal > U31^11
a > tt > isPal > U31^11
e > tt > isPal > U31^11
i > tt > isPal > U31^11
o > tt > isPal > U31^11
u > tt > isPal > U31^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U311(ok(X)) → U311(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U311(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U221(ok(X)) → U221(X)
U221(mark(X)) → U221(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U221(X)
active1 > _2 > mark1 > top > U22^11
active1 > _2 > isList > U22^11
active1 > _2 > isNeList > U22^11
active1 > _2 > isQid > U22^11
active1 > tt > isPal > U22^11
active1 > isNePal > isQid > U22^11
nil > tt > isPal > U22^11
a > tt > isPal > U22^11
e > tt > isPal > U22^11
i > tt > isPal > U22^11
o > tt > isPal > U22^11
u > tt > isPal > U22^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U221(ok(X)) → U221(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U221(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U211(ok(X1), ok(X2)) → U211(X1, X2)
U211(mark(X1), X2) → U211(X1, X2)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → U211(X1, X2)
active1 > mark > _2 > isNeList1 > ok1
active1 > mark > _2 > isQid1 > ok1
active1 > mark > top
active1 > tt > isPal1 > ok1
active1 > isNePal1 > isQid1 > ok1
nil > mark > _2 > isNeList1 > ok1
nil > mark > _2 > isQid1 > ok1
nil > mark > top
nil > tt > isPal1 > ok1
proper1 > _2 > isNeList1 > ok1
proper1 > _2 > isQid1 > ok1
proper1 > isNePal1 > isQid1 > ok1
proper1 > a > tt > isPal1 > ok1
proper1 > e > tt > isPal1 > ok1
proper1 > i > tt > isPal1 > ok1
proper1 > o > tt > isPal1 > ok1
proper1 > u > tt > isPal1 > ok1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U211(mark(X1), X2) → U211(X1, X2)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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) → U211(X1, X2)
active1 > _2 > U211 > mark1 > isNeList
active1 > _2 > U211 > isList > tt > isNeList
active1 > _2 > U411 > mark1 > isNeList
active1 > _2 > U712 > mark1 > isNeList
active1 > _2 > isQid > mark1 > isNeList
active1 > _2 > isQid > tt > isNeList
active1 > isPal1 > mark1 > isNeList
active1 > isPal1 > tt > isNeList
active1 > isPal1 > isNePal1 > isNeList
nil > mark1 > isNeList
nil > tt > isNeList
a > mark1 > isNeList
a > tt > isNeList
e > mark1 > isNeList
e > tt > isNeList
i > mark1 > isNeList
i > tt > isNeList
o > mark1 > isNeList
o > tt > isNeList
u > mark1 > isNeList
u > tt > isNeList
top > isNeList
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U111(ok(X)) → U111(X)
U111(mark(X)) → U111(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U111(X)
active1 > _2 > mark1 > top > U11^11
active1 > _2 > isList > U11^11
active1 > _2 > isNeList > U11^11
active1 > _2 > isQid > U11^11
active1 > tt > isPal > U11^11
active1 > isNePal > isQid > U11^11
nil > tt > isPal > U11^11
a > tt > isPal > U11^11
e > tt > isPal > U11^11
i > tt > isPal > U11^11
o > tt > isPal > U11^11
u > tt > isPal > U11^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
U111(ok(X)) → U111(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → U111(X)
active1 > mark > _2 > ok1 > top
active1 > tt > top
proper1 > nil > tt > top
proper1 > isQid1 > mark > _2 > ok1 > top
proper1 > isQid1 > tt > top
proper1 > a > tt > top
proper1 > e > tt > top
proper1 > i > tt > top
proper1 > o > tt > top
proper1 > u > tt > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)
__1(ok(X1), ok(X2)) → __1(X1, X2)
proper1 > _2 > mark1
proper1 > _2 > ok1 > _^11
proper1 > nil > tt > U421 > mark1
proper1 > nil > tt > U421 > ok1 > _^11
proper1 > nil > tt > U521 > mark1
proper1 > nil > tt > U521 > ok1 > _^11
proper1 > nil > tt > U721 > mark1
proper1 > nil > tt > U721 > ok1 > _^11
proper1 > nil > tt > isPal1 > mark1
proper1 > nil > tt > isPal1 > ok1 > _^11
proper1 > U212 > mark1
proper1 > U212 > ok1 > _^11
proper1 > U412 > mark1
proper1 > U412 > ok1 > _^11
proper1 > U512 > mark1
proper1 > U512 > ok1 > _^11
proper1 > U712 > mark1
proper1 > U712 > ok1 > _^11
proper1 > a > tt > U421 > mark1
proper1 > a > tt > U421 > ok1 > _^11
proper1 > a > tt > U521 > mark1
proper1 > a > tt > U521 > ok1 > _^11
proper1 > a > tt > U721 > mark1
proper1 > a > tt > U721 > ok1 > _^11
proper1 > a > tt > isPal1 > mark1
proper1 > a > tt > isPal1 > ok1 > _^11
proper1 > e > tt > U421 > mark1
proper1 > e > tt > U421 > ok1 > _^11
proper1 > e > tt > U521 > mark1
proper1 > e > tt > U521 > ok1 > _^11
proper1 > e > tt > U721 > mark1
proper1 > e > tt > U721 > ok1 > _^11
proper1 > e > tt > isPal1 > mark1
proper1 > e > tt > isPal1 > ok1 > _^11
proper1 > i > tt > U421 > mark1
proper1 > i > tt > U421 > ok1 > _^11
proper1 > i > tt > U521 > mark1
proper1 > i > tt > U521 > ok1 > _^11
proper1 > i > tt > U721 > mark1
proper1 > i > tt > U721 > ok1 > _^11
proper1 > i > tt > isPal1 > mark1
proper1 > i > tt > isPal1 > ok1 > _^11
proper1 > o > tt > U421 > mark1
proper1 > o > tt > U421 > ok1 > _^11
proper1 > o > tt > U521 > mark1
proper1 > o > tt > U521 > ok1 > _^11
proper1 > o > tt > U721 > mark1
proper1 > o > tt > U721 > ok1 > _^11
proper1 > o > tt > isPal1 > mark1
proper1 > o > tt > isPal1 > ok1 > _^11
proper1 > u > tt > U421 > mark1
proper1 > u > tt > U421 > ok1 > _^11
proper1 > u > tt > U521 > mark1
proper1 > u > tt > U521 > ok1 > _^11
proper1 > u > tt > U721 > mark1
proper1 > u > tt > U721 > ok1 > _^11
proper1 > u > tt > isPal1 > mark1
proper1 > u > tt > isPal1 > ok1 > _^11
top > active1 > _2 > mark1
top > active1 > _2 > ok1 > _^11
top > active1 > U212 > mark1
top > active1 > U212 > ok1 > _^11
top > active1 > U412 > mark1
top > active1 > U412 > ok1 > _^11
top > active1 > U421 > mark1
top > active1 > U421 > ok1 > _^11
top > active1 > U512 > mark1
top > active1 > U512 > ok1 > _^11
top > active1 > U521 > mark1
top > active1 > U521 > ok1 > _^11
top > active1 > U712 > mark1
top > active1 > U712 > ok1 > _^11
top > active1 > U721 > mark1
top > active1 > U721 > ok1 > _^11
top > active1 > isPal1 > mark1
top > active1 > isPal1 > ok1 > _^11
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
__1(X1, mark(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > U211 > mark1 > isNeList
active1 > _2 > U211 > isList > tt > isNeList
active1 > _2 > U411 > mark1 > isNeList
active1 > _2 > U712 > mark1 > isNeList
active1 > _2 > isQid > mark1 > isNeList
active1 > _2 > isQid > tt > isNeList
active1 > isPal1 > mark1 > isNeList
active1 > isPal1 > tt > isNeList
active1 > isPal1 > isNePal1 > isNeList
nil > mark1 > isNeList
nil > tt > isNeList
a > mark1 > isNeList
a > tt > isNeList
e > mark1 > isNeList
e > tt > isNeList
i > mark1 > isNeList
i > tt > isNeList
o > mark1 > isNeList
o > tt > isNeList
u > mark1 > isNeList
u > tt > isNeList
top > isNeList
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → PROPER(X)
PROPER(U21(X1, X2)) → PROPER(X1)
PROPER(U21(X1, X2)) → PROPER(X2)
PROPER(U22(X)) → PROPER(X)
PROPER(isList(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U41(X1, X2)) → PROPER(X1)
PROPER(U41(X1, X2)) → PROPER(X2)
PROPER(U42(X)) → PROPER(X)
PROPER(isNeList(X)) → PROPER(X)
PROPER(U51(X1, X2)) → PROPER(X1)
PROPER(U51(X1, X2)) → PROPER(X2)
PROPER(U52(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
PROPER(U71(X1, X2)) → PROPER(X1)
PROPER(U71(X1, X2)) → PROPER(X2)
PROPER(U72(X)) → PROPER(X)
PROPER(isPal(X)) → PROPER(X)
PROPER(U81(X)) → PROPER(X)
PROPER(isQid(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U21(X1, X2)) → PROPER(X1)
PROPER(U21(X1, X2)) → PROPER(X2)
PROPER(U41(X1, X2)) → PROPER(X1)
PROPER(U41(X1, X2)) → PROPER(X2)
PROPER(U51(X1, X2)) → PROPER(X1)
PROPER(U51(X1, X2)) → PROPER(X2)
PROPER(U71(X1, X2)) → PROPER(X1)
PROPER(U71(X1, X2)) → PROPER(X2)
active1 > mark > _2 > U212 > PROPER1
active1 > mark > _2 > U412 > PROPER1
active1 > mark > _2 > U512 > PROPER1
active1 > mark > _2 > U712 > PROPER1
active1 > mark > top > PROPER1
active1 > tt > PROPER1
nil > tt > PROPER1
a > tt > PROPER1
e > tt > PROPER1
i > tt > PROPER1
o > tt > PROPER1
u > tt > PROPER1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(isList(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U42(X)) → PROPER(X)
PROPER(isNeList(X)) → PROPER(X)
PROPER(U52(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(isPal(X)) → PROPER(X)
PROPER(U81(X)) → PROPER(X)
PROPER(isQid(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(isNeList(X)) → PROPER(X)
active1 > mark > proper1 > _2 > isNeList1 > ok1
active1 > mark > proper1 > _2 > U211 > ok1
active1 > mark > proper1 > nil > tt > isNeList1 > ok1
active1 > mark > proper1 > a > tt > isNeList1 > ok1
active1 > mark > proper1 > e > tt > isNeList1 > ok1
active1 > mark > proper1 > i > tt > isNeList1 > ok1
active1 > mark > proper1 > o > tt > isNeList1 > ok1
active1 > mark > proper1 > u > tt > isNeList1 > ok1
active1 > mark > top
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(isList(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U42(X)) → PROPER(X)
PROPER(U52(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(isPal(X)) → PROPER(X)
PROPER(U81(X)) → PROPER(X)
PROPER(isQid(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(isPal(X)) → PROPER(X)
PROPER(isNePal(X)) → PROPER(X)
active1 > isNePal1 > ok
active1 > mark > _2 > isNeList1 > ok
active1 > mark > top
active1 > tt > isPal1 > ok
nil > tt > isPal1 > ok
a > tt > isPal1 > ok
e > tt > isPal1 > ok
i > tt > isPal1 > ok
o > tt > isPal1 > ok
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(isList(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U42(X)) → PROPER(X)
PROPER(U52(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(U81(X)) → PROPER(X)
PROPER(isQid(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(isList(X)) → PROPER(X)
PROPER(U42(X)) → PROPER(X)
PROPER(U52(X)) → PROPER(X)
active1 > mark > U421 > ok > isList1
active1 > mark > U521 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(U81(X)) → PROPER(X)
PROPER(isQid(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(isQid(X)) → PROPER(X)
active1 > mark > _2 > isList1 > ok > isQid1
active1 > mark > _2 > isNeList1 > ok > isQid1
active1 > mark > U421 > ok > isQid1
active1 > mark > top > isQid1
active1 > tt > isPal1 > ok > isQid1
active1 > isNePal1 > ok > isQid1
nil > tt > isPal1 > ok > isQid1
a > tt > isPal1 > ok > isQid1
e > tt > isPal1 > ok > isQid1
i > tt > isPal1 > ok > isQid1
o > tt > isPal1 > ok > isQid1
u > tt > isPal1 > ok > isQid1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
PROPER(U72(X)) → PROPER(X)
PROPER(U81(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U81(X)) → PROPER(X)
U811 > mark
U811 > ok
_2 > isList1 > mark
_2 > isList1 > ok
_2 > isNeList1 > mark
_2 > isNeList1 > ok
_2 > isQid1 > mark
_2 > isQid1 > ok
nil > tt > isPal1 > mark
nil > tt > isPal1 > ok
U421 > mark
U421 > ok
U521 > mark
U521 > ok
isNePal1 > isQid1 > mark
isNePal1 > isQid1 > ok
a > tt > isPal1 > mark
a > tt > isPal1 > ok
e > tt > isPal1 > mark
e > tt > isPal1 > ok
i > tt > isPal1 > mark
i > tt > isPal1 > ok
o > tt > isPal1 > mark
o > tt > isPal1 > ok
u > tt > isPal1 > mark
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U61(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)
active1 > mark > U721 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > _2 > isQid1 > ok > isList1
active1 > mark > U421 > ok > isList1
active1 > mark > U521 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > isQid1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
PROPER(U61(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U61(X)) → PROPER(X)
active1 > mark > U611 > ok > isList1
active1 > mark > _2 > U412 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > _2 > isQid1 > ok > isList1
active1 > mark > U421 > ok > isList1
active1 > mark > U521 > ok > isList1
active1 > mark > U721 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > U611 > ok > isList1
active1 > isNePal1 > isQid1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
PROPER(U31(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U31(X)) → PROPER(X)
active1 > mark > _2 > isList1 > ok
active1 > mark > _2 > isNeList1 > U311 > ok
active1 > mark > _2 > isQid1 > ok
active1 > mark > U421 > ok
active1 > mark > top
active1 > tt > isPal1 > ok
active1 > isNePal1 > isQid1 > ok
nil > tt > isPal1 > ok
a > tt > isPal1 > ok
e > tt > isPal1 > ok
i > tt > isPal1 > ok
o > tt > isPal1 > ok
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
PROPER(U22(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U22(X)) → PROPER(X)
active1 > mark > U221 > ok
active1 > mark > _2 > isList1 > ok
active1 > mark > _2 > isNeList1 > ok
active1 > mark > _2 > isQid1 > ok
active1 > mark > U421 > ok
active1 > mark > U521 > ok
active1 > mark > top
active1 > tt > isPal1 > ok
active1 > isNePal1 > isQid1 > ok
nil > tt > isPal1 > ok
a > tt > isPal1 > ok
e > tt > isPal1 > ok
i > tt > isPal1 > ok
o > tt > isPal1 > ok
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
PROPER(U11(X)) → PROPER(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U11(X)) → PROPER(X)
U111 > mark > top > PROPER1
U111 > tt > ok > PROPER1
_1 > mark > top > PROPER1
_1 > ok > PROPER1
nil > tt > ok > PROPER1
U211 > mark > top > PROPER1
U211 > ok > PROPER1
U221 > mark > top > PROPER1
U221 > tt > ok > PROPER1
isList1 > mark > top > PROPER1
isList1 > tt > ok > PROPER1
U311 > mark > top > PROPER1
U311 > tt > ok > PROPER1
U411 > mark > top > PROPER1
U411 > ok > PROPER1
U421 > mark > top > PROPER1
U421 > tt > ok > PROPER1
isNeList1 > mark > top > PROPER1
isNeList1 > ok > PROPER1
U511 > mark > top > PROPER1
U511 > ok > PROPER1
U521 > mark > top > PROPER1
U521 > tt > ok > PROPER1
U611 > mark > top > PROPER1
U611 > tt > ok > PROPER1
U711 > isPal1 > mark > top > PROPER1
U711 > isPal1 > tt > ok > PROPER1
U721 > mark > top > PROPER1
U721 > tt > ok > PROPER1
U811 > mark > top > PROPER1
U811 > tt > ok > PROPER1
isNePal1 > mark > top > PROPER1
isNePal1 > ok > PROPER1
a > mark > top > PROPER1
a > tt > ok > PROPER1
e > mark > top > PROPER1
e > tt > ok > PROPER1
i > mark > top > PROPER1
i > tt > ok > PROPER1
o > mark > top > PROPER1
o > tt > ok > PROPER1
u > mark > top > PROPER1
u > tt > ok > PROPER1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → ACTIVE(X)
ACTIVE(U21(X1, X2)) → ACTIVE(X1)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2)) → ACTIVE(X1)
ACTIVE(U42(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2)) → ACTIVE(X1)
ACTIVE(U52(X)) → ACTIVE(X)
ACTIVE(U61(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(U81(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)
active1 > _2 > isList > ok > ACTIVE1
active1 > _2 > isNeList > ok > ACTIVE1
active1 > _2 > isQid > ok > ACTIVE1
active1 > tt > isPal > ok > ACTIVE1
active1 > isNePal > ok > ACTIVE1
nil > tt > isPal > ok > ACTIVE1
a > tt > isPal > ok > ACTIVE1
e > tt > isPal > ok > ACTIVE1
i > tt > isPal > ok > ACTIVE1
o > tt > isPal > ok > ACTIVE1
u > tt > isPal > ok > ACTIVE1
top > ACTIVE1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U21(X1, X2)) → ACTIVE(X1)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U41(X1, X2)) → ACTIVE(X1)
ACTIVE(U42(X)) → ACTIVE(X)
ACTIVE(U51(X1, X2)) → ACTIVE(X1)
ACTIVE(U52(X)) → ACTIVE(X)
ACTIVE(U61(X)) → ACTIVE(X)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(U81(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U21(X1, X2)) → ACTIVE(X1)
ACTIVE(U41(X1, X2)) → ACTIVE(X1)
ACTIVE(U51(X1, X2)) → ACTIVE(X1)
ACTIVE(U71(X1, X2)) → ACTIVE(X1)
active1 > _2 > U712 > isPal1 > ok > U212 > ACTIVE1
active1 > _2 > U712 > isPal1 > ok > U412 > ACTIVE1
active1 > _2 > U712 > isPal1 > ok > U512 > ACTIVE1
active1 > _2 > isNeList1 > ok > U212 > ACTIVE1
active1 > _2 > isNeList1 > ok > U412 > ACTIVE1
active1 > _2 > isNeList1 > ok > U512 > ACTIVE1
active1 > _2 > isQid1 > ok > U212 > ACTIVE1
active1 > _2 > isQid1 > ok > U412 > ACTIVE1
active1 > _2 > isQid1 > ok > U512 > ACTIVE1
active1 > isNePal1 > U712 > isPal1 > ok > U212 > ACTIVE1
active1 > isNePal1 > U712 > isPal1 > ok > U412 > ACTIVE1
active1 > isNePal1 > U712 > isPal1 > ok > U512 > ACTIVE1
active1 > isNePal1 > isQid1 > ok > U212 > ACTIVE1
active1 > isNePal1 > isQid1 > ok > U412 > ACTIVE1
active1 > isNePal1 > isQid1 > ok > U512 > ACTIVE1
nil > tt > isNeList1 > ok > U212 > ACTIVE1
nil > tt > isNeList1 > ok > U412 > ACTIVE1
nil > tt > isNeList1 > ok > U512 > ACTIVE1
nil > tt > isPal1 > ok > U212 > ACTIVE1
nil > tt > isPal1 > ok > U412 > ACTIVE1
nil > tt > isPal1 > ok > U512 > ACTIVE1
a > tt > isNeList1 > ok > U212 > ACTIVE1
a > tt > isNeList1 > ok > U412 > ACTIVE1
a > tt > isNeList1 > ok > U512 > ACTIVE1
a > tt > isPal1 > ok > U212 > ACTIVE1
a > tt > isPal1 > ok > U412 > ACTIVE1
a > tt > isPal1 > ok > U512 > ACTIVE1
e > tt > isNeList1 > ok > U212 > ACTIVE1
e > tt > isNeList1 > ok > U412 > ACTIVE1
e > tt > isNeList1 > ok > U512 > ACTIVE1
e > tt > isPal1 > ok > U212 > ACTIVE1
e > tt > isPal1 > ok > U412 > ACTIVE1
e > tt > isPal1 > ok > U512 > ACTIVE1
i > tt > isNeList1 > ok > U212 > ACTIVE1
i > tt > isNeList1 > ok > U412 > ACTIVE1
i > tt > isNeList1 > ok > U512 > ACTIVE1
i > tt > isPal1 > ok > U212 > ACTIVE1
i > tt > isPal1 > ok > U412 > ACTIVE1
i > tt > isPal1 > ok > U512 > ACTIVE1
o > tt > isNeList1 > ok > U212 > ACTIVE1
o > tt > isNeList1 > ok > U412 > ACTIVE1
o > tt > isNeList1 > ok > U512 > ACTIVE1
o > tt > isPal1 > ok > U212 > ACTIVE1
o > tt > isPal1 > ok > U412 > ACTIVE1
o > tt > isPal1 > ok > U512 > ACTIVE1
u > tt > isNeList1 > ok > U212 > ACTIVE1
u > tt > isNeList1 > ok > U412 > ACTIVE1
u > tt > isNeList1 > ok > U512 > ACTIVE1
u > tt > isPal1 > ok > U212 > ACTIVE1
u > tt > isPal1 > ok > U412 > ACTIVE1
u > tt > isPal1 > ok > U512 > ACTIVE1
top > ACTIVE1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U42(X)) → ACTIVE(X)
ACTIVE(U52(X)) → ACTIVE(X)
ACTIVE(U61(X)) → ACTIVE(X)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(U81(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → ACTIVE(X)
active1 > mark > U421 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > _2 > isQid1 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > isQid1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U52(X)) → ACTIVE(X)
ACTIVE(U61(X)) → ACTIVE(X)
ACTIVE(U72(X)) → ACTIVE(X)
ACTIVE(U81(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U81(X)) → ACTIVE(X)
active1 > mark > U811 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > _2 > isQid1 > ok > isList1
active1 > mark > U421 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > isQid1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U52(X)) → ACTIVE(X)
ACTIVE(U61(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U52(X)) → ACTIVE(X)
U521 > mark
U521 > ok
_2 > isList1 > mark
_2 > isList1 > ok
_2 > isNeList1 > mark
_2 > isNeList1 > ok
_2 > isQid1 > mark
_2 > isQid1 > ok
nil > tt > isPal1 > mark
nil > tt > isPal1 > ok
U421 > mark
U421 > ok
U811 > mark
U811 > ok
isNePal1 > isQid1 > mark
isNePal1 > isQid1 > ok
a > tt > isPal1 > mark
a > tt > isPal1 > ok
e > tt > isPal1 > mark
e > tt > isPal1 > ok
i > tt > isPal1 > mark
i > tt > isPal1 > ok
o > tt > isPal1 > mark
o > tt > isPal1 > ok
u > tt > isPal1 > mark
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U61(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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 > U721 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > _2 > isQid1 > ok > isList1
active1 > mark > U421 > ok > isList1
active1 > mark > U521 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > isQid1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
ACTIVE(U61(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U61(X)) → ACTIVE(X)
active1 > mark > U611 > ok > isList1
active1 > mark > _2 > U412 > ok > isList1
active1 > mark > _2 > isNeList1 > ok > isList1
active1 > mark > _2 > isQid1 > ok > isList1
active1 > mark > U421 > ok > isList1
active1 > mark > U521 > ok > isList1
active1 > mark > U721 > ok > isList1
active1 > mark > top > isList1
active1 > tt > isPal1 > ok > isList1
active1 > isNePal1 > U611 > ok > isList1
active1 > isNePal1 > isQid1 > ok > isList1
nil > tt > isPal1 > ok > isList1
a > tt > isPal1 > ok > isList1
e > tt > isPal1 > ok > isList1
i > tt > isPal1 > ok > isList1
o > tt > isPal1 > ok > isList1
u > tt > isPal1 > ok > isList1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
ACTIVE(U31(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U31(X)) → ACTIVE(X)
active1 > mark > _2 > isList1 > ok
active1 > mark > _2 > isNeList1 > U311 > ok
active1 > mark > _2 > isQid1 > ok
active1 > mark > U421 > ok
active1 > mark > top
active1 > tt > isPal1 > ok
active1 > isNePal1 > isQid1 > ok
nil > tt > isPal1 > ok
a > tt > isPal1 > ok
e > tt > isPal1 > ok
i > tt > isPal1 > ok
o > tt > isPal1 > ok
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
ACTIVE(U22(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(X)) → ACTIVE(X)
active1 > mark > U221 > ok
active1 > mark > _2 > isList1 > ok
active1 > mark > _2 > isNeList1 > ok
active1 > mark > _2 > isQid1 > ok
active1 > mark > U421 > ok
active1 > mark > U521 > ok
active1 > mark > top
active1 > tt > isPal1 > ok
active1 > isNePal1 > isQid1 > ok
nil > tt > isPal1 > ok
a > tt > isPal1 > ok
e > tt > isPal1 > ok
i > tt > isPal1 > ok
o > tt > isPal1 > ok
u > tt > isPal1 > ok
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
ACTIVE(U11(X)) → ACTIVE(X)
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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(U11(X)) → ACTIVE(X)
U111 > mark > top > ACTIVE1
U111 > tt > ok > ACTIVE1
_1 > mark > top > ACTIVE1
_1 > ok > ACTIVE1
nil > tt > ok > ACTIVE1
U211 > mark > top > ACTIVE1
U211 > ok > ACTIVE1
U221 > mark > top > ACTIVE1
U221 > tt > ok > ACTIVE1
isList1 > mark > top > ACTIVE1
isList1 > tt > ok > ACTIVE1
U311 > mark > top > ACTIVE1
U311 > tt > ok > ACTIVE1
U411 > mark > top > ACTIVE1
U411 > ok > ACTIVE1
U421 > mark > top > ACTIVE1
U421 > tt > ok > ACTIVE1
isNeList1 > mark > top > ACTIVE1
isNeList1 > ok > ACTIVE1
U511 > mark > top > ACTIVE1
U511 > ok > ACTIVE1
U521 > mark > top > ACTIVE1
U521 > tt > ok > ACTIVE1
U611 > mark > top > ACTIVE1
U611 > tt > ok > ACTIVE1
U711 > isPal1 > mark > top > ACTIVE1
U711 > isPal1 > tt > ok > ACTIVE1
U721 > mark > top > ACTIVE1
U721 > tt > ok > ACTIVE1
U811 > mark > top > ACTIVE1
U811 > tt > ok > ACTIVE1
isNePal1 > mark > top > ACTIVE1
isNePal1 > ok > ACTIVE1
a > mark > top > ACTIVE1
a > tt > ok > ACTIVE1
e > mark > top > ACTIVE1
e > tt > ok > ACTIVE1
i > mark > top > ACTIVE1
i > tt > ok > ACTIVE1
o > mark > top > ACTIVE1
o > tt > ok > ACTIVE1
u > mark > top > ACTIVE1
u > tt > ok > ACTIVE1
active(__(__(X, Y), Z)) → mark(__(X, __(Y, Z)))
active(__(X, nil)) → mark(X)
active(__(nil, X)) → mark(X)
active(U11(tt)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(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)) → mark(tt)
active(U21(tt, V2)) → mark(U22(isList(V2)))
active(U22(tt)) → mark(tt)
active(U31(tt)) → mark(tt)
active(U41(tt, V2)) → mark(U42(isNeList(V2)))
active(U42(tt)) → mark(tt)
active(U51(tt, V2)) → mark(U52(isList(V2)))
active(U52(tt)) → mark(tt)
active(U61(tt)) → mark(tt)
active(U71(tt, P)) → mark(U72(isPal(P)))
active(U72(tt)) → mark(tt)
active(U81(tt)) → mark(tt)
active(isList(V)) → mark(U11(isNeList(V)))
active(isList(nil)) → mark(tt)
active(isList(__(V1, V2))) → mark(U21(isList(V1), V2))
active(isNeList(V)) → mark(U31(isQid(V)))
active(isNeList(__(V1, V2))) → mark(U41(isList(V1), V2))
active(isNeList(__(V1, V2))) → mark(U51(isNeList(V1), V2))
active(isNePal(V)) → mark(U61(isQid(V)))
active(isNePal(__(I, __(P, I)))) → mark(U71(isQid(I), P))
active(isPal(V)) → mark(U81(isNePal(V)))
active(isPal(nil)) → mark(tt)
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(X)) → U11(active(X))
active(U21(X1, X2)) → U21(active(X1), X2)
active(U22(X)) → U22(active(X))
active(U31(X)) → U31(active(X))
active(U41(X1, X2)) → U41(active(X1), X2)
active(U42(X)) → U42(active(X))
active(U51(X1, X2)) → U51(active(X1), X2)
active(U52(X)) → U52(active(X))
active(U61(X)) → U61(active(X))
active(U71(X1, X2)) → U71(active(X1), X2)
active(U72(X)) → U72(active(X))
active(U81(X)) → U81(active(X))
__(mark(X1), X2) → mark(__(X1, X2))
__(X1, mark(X2)) → mark(__(X1, X2))
U11(mark(X)) → mark(U11(X))
U21(mark(X1), X2) → mark(U21(X1, X2))
U22(mark(X)) → mark(U22(X))
U31(mark(X)) → mark(U31(X))
U41(mark(X1), X2) → mark(U41(X1, X2))
U42(mark(X)) → mark(U42(X))
U51(mark(X1), X2) → mark(U51(X1, X2))
U52(mark(X)) → mark(U52(X))
U61(mark(X)) → mark(U61(X))
U71(mark(X1), X2) → mark(U71(X1, X2))
U72(mark(X)) → mark(U72(X))
U81(mark(X)) → mark(U81(X))
proper(__(X1, X2)) → __(proper(X1), proper(X2))
proper(nil) → ok(nil)
proper(U11(X)) → U11(proper(X))
proper(tt) → ok(tt)
proper(U21(X1, X2)) → U21(proper(X1), proper(X2))
proper(U22(X)) → U22(proper(X))
proper(isList(X)) → isList(proper(X))
proper(U31(X)) → U31(proper(X))
proper(U41(X1, X2)) → U41(proper(X1), proper(X2))
proper(U42(X)) → U42(proper(X))
proper(isNeList(X)) → isNeList(proper(X))
proper(U51(X1, X2)) → U51(proper(X1), proper(X2))
proper(U52(X)) → U52(proper(X))
proper(U61(X)) → U61(proper(X))
proper(U71(X1, X2)) → U71(proper(X1), proper(X2))
proper(U72(X)) → U72(proper(X))
proper(isPal(X)) → isPal(proper(X))
proper(U81(X)) → U81(proper(X))
proper(isQid(X)) → isQid(proper(X))
proper(isNePal(X)) → isNePal(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(X)) → ok(U11(X))
U21(ok(X1), ok(X2)) → ok(U21(X1, X2))
U22(ok(X)) → ok(U22(X))
isList(ok(X)) → ok(isList(X))
U31(ok(X)) → ok(U31(X))
U41(ok(X1), ok(X2)) → ok(U41(X1, X2))
U42(ok(X)) → ok(U42(X))
isNeList(ok(X)) → ok(isNeList(X))
U51(ok(X1), ok(X2)) → ok(U51(X1, X2))
U52(ok(X)) → ok(U52(X))
U61(ok(X)) → ok(U61(X))
U71(ok(X1), ok(X2)) → ok(U71(X1, X2))
U72(ok(X)) → ok(U72(X))
isPal(ok(X)) → ok(isPal(X))
U81(ok(X)) → ok(U81(X))
isQid(ok(X)) → ok(isQid(X))
isNePal(ok(X)) → ok(isNePal(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))