(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.

(1) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.

(2) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__U101(tt, V1, V2) → A__U102(a__isNaturalKind(V1), V1, V2)
A__U101(tt, V1, V2) → A__ISNATURALKIND(V1)
A__U102(tt, V1, V2) → A__U103(a__isLNatKind(V2), V1, V2)
A__U102(tt, V1, V2) → A__ISLNATKIND(V2)
A__U103(tt, V1, V2) → A__U104(a__isLNatKind(V2), V1, V2)
A__U103(tt, V1, V2) → A__ISLNATKIND(V2)
A__U104(tt, V1, V2) → A__U105(a__isNatural(V1), V2)
A__U104(tt, V1, V2) → A__ISNATURAL(V1)
A__U105(tt, V2) → A__U106(a__isLNat(V2))
A__U105(tt, V2) → A__ISLNAT(V2)
A__U11(tt, N, XS) → A__U12(a__isNaturalKind(N), N, XS)
A__U11(tt, N, XS) → A__ISNATURALKIND(N)
A__U111(tt, V2) → A__U112(a__isLNatKind(V2))
A__U111(tt, V2) → A__ISLNATKIND(V2)
A__U12(tt, N, XS) → A__U13(a__isLNat(XS), N, XS)
A__U12(tt, N, XS) → A__ISLNAT(XS)
A__U121(tt, V2) → A__U122(a__isLNatKind(V2))
A__U121(tt, V2) → A__ISLNATKIND(V2)
A__U13(tt, N, XS) → A__U14(a__isLNatKind(XS), N, XS)
A__U13(tt, N, XS) → A__ISLNATKIND(XS)
A__U14(tt, N, XS) → A__SND(a__splitAt(mark(N), mark(XS)))
A__U14(tt, N, XS) → A__SPLITAT(mark(N), mark(XS))
A__U14(tt, N, XS) → MARK(N)
A__U14(tt, N, XS) → MARK(XS)
A__U171(tt, V2) → A__U172(a__isLNatKind(V2))
A__U171(tt, V2) → A__ISLNATKIND(V2)
A__U181(tt, V1) → A__U182(a__isLNatKind(V1), V1)
A__U181(tt, V1) → A__ISLNATKIND(V1)
A__U182(tt, V1) → A__U183(a__isLNat(V1))
A__U182(tt, V1) → A__ISLNAT(V1)
A__U191(tt, V1) → A__U192(a__isNaturalKind(V1), V1)
A__U191(tt, V1) → A__ISNATURALKIND(V1)
A__U192(tt, V1) → A__U193(a__isNatural(V1))
A__U192(tt, V1) → A__ISNATURAL(V1)
A__U201(tt, V1, V2) → A__U202(a__isNaturalKind(V1), V1, V2)
A__U201(tt, V1, V2) → A__ISNATURALKIND(V1)
A__U202(tt, V1, V2) → A__U203(a__isLNatKind(V2), V1, V2)
A__U202(tt, V1, V2) → A__ISLNATKIND(V2)
A__U203(tt, V1, V2) → A__U204(a__isLNatKind(V2), V1, V2)
A__U203(tt, V1, V2) → A__ISLNATKIND(V2)
A__U204(tt, V1, V2) → A__U205(a__isNatural(V1), V2)
A__U204(tt, V1, V2) → A__ISNATURAL(V1)
A__U205(tt, V2) → A__U206(a__isLNat(V2))
A__U205(tt, V2) → A__ISLNAT(V2)
A__U21(tt, X, Y) → A__U22(a__isLNatKind(X), X, Y)
A__U21(tt, X, Y) → A__ISLNATKIND(X)
A__U22(tt, X, Y) → A__U23(a__isLNat(Y), X, Y)
A__U22(tt, X, Y) → A__ISLNAT(Y)
A__U23(tt, X, Y) → A__U24(a__isLNatKind(Y), X)
A__U23(tt, X, Y) → A__ISLNATKIND(Y)
A__U231(tt, V2) → A__U232(a__isLNatKind(V2))
A__U231(tt, V2) → A__ISLNATKIND(V2)
A__U24(tt, X) → MARK(X)
A__U241(tt, V1, V2) → A__U242(a__isLNatKind(V1), V1, V2)
A__U241(tt, V1, V2) → A__ISLNATKIND(V1)
A__U242(tt, V1, V2) → A__U243(a__isLNatKind(V2), V1, V2)
A__U242(tt, V1, V2) → A__ISLNATKIND(V2)
A__U243(tt, V1, V2) → A__U244(a__isLNatKind(V2), V1, V2)
A__U243(tt, V1, V2) → A__ISLNATKIND(V2)
A__U244(tt, V1, V2) → A__U245(a__isLNat(V1), V2)
A__U244(tt, V1, V2) → A__ISLNAT(V1)
A__U245(tt, V2) → A__U246(a__isLNat(V2))
A__U245(tt, V2) → A__ISLNAT(V2)
A__U251(tt, V1, V2) → A__U252(a__isNaturalKind(V1), V1, V2)
A__U251(tt, V1, V2) → A__ISNATURALKIND(V1)
A__U252(tt, V1, V2) → A__U253(a__isLNatKind(V2), V1, V2)
A__U252(tt, V1, V2) → A__ISLNATKIND(V2)
A__U253(tt, V1, V2) → A__U254(a__isLNatKind(V2), V1, V2)
A__U253(tt, V1, V2) → A__ISLNATKIND(V2)
A__U254(tt, V1, V2) → A__U255(a__isNatural(V1), V2)
A__U254(tt, V1, V2) → A__ISNATURAL(V1)
A__U255(tt, V2) → A__U256(a__isLNat(V2))
A__U255(tt, V2) → A__ISLNAT(V2)
A__U261(tt, V2) → A__U262(a__isLNatKind(V2))
A__U261(tt, V2) → A__ISLNATKIND(V2)
A__U271(tt, V2) → A__U272(a__isLNatKind(V2))
A__U271(tt, V2) → A__ISLNATKIND(V2)
A__U281(tt, N) → A__U282(a__isNaturalKind(N), N)
A__U281(tt, N) → A__ISNATURALKIND(N)
A__U282(tt, N) → MARK(N)
A__U291(tt, N, XS) → A__U292(a__isNaturalKind(N), N, XS)
A__U291(tt, N, XS) → A__ISNATURALKIND(N)
A__U292(tt, N, XS) → A__U293(a__isLNat(XS), N, XS)
A__U292(tt, N, XS) → A__ISLNAT(XS)
A__U293(tt, N, XS) → A__U294(a__isLNatKind(XS), N, XS)
A__U293(tt, N, XS) → A__ISLNATKIND(XS)
A__U294(tt, N, XS) → A__HEAD(a__afterNth(mark(N), mark(XS)))
A__U294(tt, N, XS) → A__AFTERNTH(mark(N), mark(XS))
A__U294(tt, N, XS) → MARK(N)
A__U294(tt, N, XS) → MARK(XS)
A__U301(tt, X, Y) → A__U302(a__isLNatKind(X), Y)
A__U301(tt, X, Y) → A__ISLNATKIND(X)
A__U302(tt, Y) → A__U303(a__isLNat(Y), Y)
A__U302(tt, Y) → A__ISLNAT(Y)
A__U303(tt, Y) → A__U304(a__isLNatKind(Y), Y)
A__U303(tt, Y) → A__ISLNATKIND(Y)
A__U304(tt, Y) → MARK(Y)
A__U31(tt, N, XS) → A__U32(a__isNaturalKind(N), N, XS)
A__U31(tt, N, XS) → A__ISNATURALKIND(N)
A__U311(tt, XS) → A__U312(a__isLNatKind(XS), XS)
A__U311(tt, XS) → A__ISLNATKIND(XS)
A__U312(tt, XS) → MARK(XS)
A__U32(tt, N, XS) → A__U33(a__isLNat(XS), N, XS)
A__U32(tt, N, XS) → A__ISLNAT(XS)
A__U321(tt, N, X, XS) → A__U322(a__isNaturalKind(N), N, X, XS)
A__U321(tt, N, X, XS) → A__ISNATURALKIND(N)
A__U322(tt, N, X, XS) → A__U323(a__isNatural(X), N, X, XS)
A__U322(tt, N, X, XS) → A__ISNATURAL(X)
A__U323(tt, N, X, XS) → A__U324(a__isNaturalKind(X), N, X, XS)
A__U323(tt, N, X, XS) → A__ISNATURALKIND(X)
A__U324(tt, N, X, XS) → A__U325(a__isLNat(XS), N, X, XS)
A__U324(tt, N, X, XS) → A__ISLNAT(XS)
A__U325(tt, N, X, XS) → A__U326(a__isLNatKind(XS), N, X, XS)
A__U325(tt, N, X, XS) → A__ISLNATKIND(XS)
A__U326(tt, N, X, XS) → A__U327(a__splitAt(mark(N), mark(XS)), X)
A__U326(tt, N, X, XS) → A__SPLITAT(mark(N), mark(XS))
A__U326(tt, N, X, XS) → MARK(N)
A__U326(tt, N, X, XS) → MARK(XS)
A__U327(pair(YS, ZS), X) → MARK(X)
A__U327(pair(YS, ZS), X) → MARK(ZS)
A__U33(tt, N, XS) → A__U34(a__isLNatKind(XS), N)
A__U33(tt, N, XS) → A__ISLNATKIND(XS)
A__U331(tt, N, XS) → A__U332(a__isNaturalKind(N), XS)
A__U331(tt, N, XS) → A__ISNATURALKIND(N)
A__U332(tt, XS) → A__U333(a__isLNat(XS), XS)
A__U332(tt, XS) → A__ISLNAT(XS)
A__U333(tt, XS) → A__U334(a__isLNatKind(XS), XS)
A__U333(tt, XS) → A__ISLNATKIND(XS)
A__U334(tt, XS) → MARK(XS)
A__U34(tt, N) → MARK(N)
A__U341(tt, N, XS) → A__U342(a__isNaturalKind(N), N, XS)
A__U341(tt, N, XS) → A__ISNATURALKIND(N)
A__U342(tt, N, XS) → A__U343(a__isLNat(XS), N, XS)
A__U342(tt, N, XS) → A__ISLNAT(XS)
A__U343(tt, N, XS) → A__U344(a__isLNatKind(XS), N, XS)
A__U343(tt, N, XS) → A__ISLNATKIND(XS)
A__U344(tt, N, XS) → A__FST(a__splitAt(mark(N), mark(XS)))
A__U344(tt, N, XS) → A__SPLITAT(mark(N), mark(XS))
A__U344(tt, N, XS) → MARK(N)
A__U344(tt, N, XS) → MARK(XS)
A__U41(tt, V1, V2) → A__U42(a__isNaturalKind(V1), V1, V2)
A__U41(tt, V1, V2) → A__ISNATURALKIND(V1)
A__U42(tt, V1, V2) → A__U43(a__isLNatKind(V2), V1, V2)
A__U42(tt, V1, V2) → A__ISLNATKIND(V2)
A__U43(tt, V1, V2) → A__U44(a__isLNatKind(V2), V1, V2)
A__U43(tt, V1, V2) → A__ISLNATKIND(V2)
A__U44(tt, V1, V2) → A__U45(a__isNatural(V1), V2)
A__U44(tt, V1, V2) → A__ISNATURAL(V1)
A__U45(tt, V2) → A__U46(a__isLNat(V2))
A__U45(tt, V2) → A__ISLNAT(V2)
A__U51(tt, V1, V2) → A__U52(a__isNaturalKind(V1), V1, V2)
A__U51(tt, V1, V2) → A__ISNATURALKIND(V1)
A__U52(tt, V1, V2) → A__U53(a__isLNatKind(V2), V1, V2)
A__U52(tt, V1, V2) → A__ISLNATKIND(V2)
A__U53(tt, V1, V2) → A__U54(a__isLNatKind(V2), V1, V2)
A__U53(tt, V1, V2) → A__ISLNATKIND(V2)
A__U54(tt, V1, V2) → A__U55(a__isNatural(V1), V2)
A__U54(tt, V1, V2) → A__ISNATURAL(V1)
A__U55(tt, V2) → A__U56(a__isLNat(V2))
A__U55(tt, V2) → A__ISLNAT(V2)
A__U61(tt, V1) → A__U62(a__isPLNatKind(V1), V1)
A__U61(tt, V1) → A__ISPLNATKIND(V1)
A__U62(tt, V1) → A__U63(a__isPLNat(V1))
A__U62(tt, V1) → A__ISPLNAT(V1)
A__U71(tt, V1) → A__U72(a__isNaturalKind(V1), V1)
A__U71(tt, V1) → A__ISNATURALKIND(V1)
A__U72(tt, V1) → A__U73(a__isNatural(V1))
A__U72(tt, V1) → A__ISNATURAL(V1)
A__U81(tt, V1) → A__U82(a__isPLNatKind(V1), V1)
A__U81(tt, V1) → A__ISPLNATKIND(V1)
A__U82(tt, V1) → A__U83(a__isPLNat(V1))
A__U82(tt, V1) → A__ISPLNAT(V1)
A__U91(tt, V1) → A__U92(a__isLNatKind(V1), V1)
A__U91(tt, V1) → A__ISLNATKIND(V1)
A__U92(tt, V1) → A__U93(a__isLNat(V1))
A__U92(tt, V1) → A__ISLNAT(V1)
A__AFTERNTH(N, XS) → A__U11(a__isNatural(N), N, XS)
A__AFTERNTH(N, XS) → A__ISNATURAL(N)
A__FST(pair(X, Y)) → A__U21(a__isLNat(X), X, Y)
A__FST(pair(X, Y)) → A__ISLNAT(X)
A__HEAD(cons(N, XS)) → A__U31(a__isNatural(N), N, XS)
A__HEAD(cons(N, XS)) → A__ISNATURAL(N)
A__ISLNAT(afterNth(V1, V2)) → A__U41(a__isNaturalKind(V1), V1, V2)
A__ISLNAT(afterNth(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNAT(cons(V1, V2)) → A__U51(a__isNaturalKind(V1), V1, V2)
A__ISLNAT(cons(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNAT(fst(V1)) → A__U61(a__isPLNatKind(V1), V1)
A__ISLNAT(fst(V1)) → A__ISPLNATKIND(V1)
A__ISLNAT(natsFrom(V1)) → A__U71(a__isNaturalKind(V1), V1)
A__ISLNAT(natsFrom(V1)) → A__ISNATURALKIND(V1)
A__ISLNAT(snd(V1)) → A__U81(a__isPLNatKind(V1), V1)
A__ISLNAT(snd(V1)) → A__ISPLNATKIND(V1)
A__ISLNAT(tail(V1)) → A__U91(a__isLNatKind(V1), V1)
A__ISLNAT(tail(V1)) → A__ISLNATKIND(V1)
A__ISLNAT(take(V1, V2)) → A__U101(a__isNaturalKind(V1), V1, V2)
A__ISLNAT(take(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(afterNth(V1, V2)) → A__U111(a__isNaturalKind(V1), V2)
A__ISLNATKIND(afterNth(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(cons(V1, V2)) → A__U121(a__isNaturalKind(V1), V2)
A__ISLNATKIND(cons(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(fst(V1)) → A__U131(a__isPLNatKind(V1))
A__ISLNATKIND(fst(V1)) → A__ISPLNATKIND(V1)
A__ISLNATKIND(natsFrom(V1)) → A__U141(a__isNaturalKind(V1))
A__ISLNATKIND(natsFrom(V1)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(snd(V1)) → A__U151(a__isPLNatKind(V1))
A__ISLNATKIND(snd(V1)) → A__ISPLNATKIND(V1)
A__ISLNATKIND(tail(V1)) → A__U161(a__isLNatKind(V1))
A__ISLNATKIND(tail(V1)) → A__ISLNATKIND(V1)
A__ISLNATKIND(take(V1, V2)) → A__U171(a__isNaturalKind(V1), V2)
A__ISLNATKIND(take(V1, V2)) → A__ISNATURALKIND(V1)
A__ISNATURAL(head(V1)) → A__U181(a__isLNatKind(V1), V1)
A__ISNATURAL(head(V1)) → A__ISLNATKIND(V1)
A__ISNATURAL(s(V1)) → A__U191(a__isNaturalKind(V1), V1)
A__ISNATURAL(s(V1)) → A__ISNATURALKIND(V1)
A__ISNATURAL(sel(V1, V2)) → A__U201(a__isNaturalKind(V1), V1, V2)
A__ISNATURAL(sel(V1, V2)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(head(V1)) → A__U211(a__isLNatKind(V1))
A__ISNATURALKIND(head(V1)) → A__ISLNATKIND(V1)
A__ISNATURALKIND(s(V1)) → A__U221(a__isNaturalKind(V1))
A__ISNATURALKIND(s(V1)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(sel(V1, V2)) → A__U231(a__isNaturalKind(V1), V2)
A__ISNATURALKIND(sel(V1, V2)) → A__ISNATURALKIND(V1)
A__ISPLNAT(pair(V1, V2)) → A__U241(a__isLNatKind(V1), V1, V2)
A__ISPLNAT(pair(V1, V2)) → A__ISLNATKIND(V1)
A__ISPLNAT(splitAt(V1, V2)) → A__U251(a__isNaturalKind(V1), V1, V2)
A__ISPLNAT(splitAt(V1, V2)) → A__ISNATURALKIND(V1)
A__ISPLNATKIND(pair(V1, V2)) → A__U261(a__isLNatKind(V1), V2)
A__ISPLNATKIND(pair(V1, V2)) → A__ISLNATKIND(V1)
A__ISPLNATKIND(splitAt(V1, V2)) → A__U271(a__isNaturalKind(V1), V2)
A__ISPLNATKIND(splitAt(V1, V2)) → A__ISNATURALKIND(V1)
A__NATSFROM(N) → A__U281(a__isNatural(N), N)
A__NATSFROM(N) → A__ISNATURAL(N)
A__SEL(N, XS) → A__U291(a__isNatural(N), N, XS)
A__SEL(N, XS) → A__ISNATURAL(N)
A__SND(pair(X, Y)) → A__U301(a__isLNat(X), X, Y)
A__SND(pair(X, Y)) → A__ISLNAT(X)
A__SPLITAT(0, XS) → A__U311(a__isLNat(XS), XS)
A__SPLITAT(0, XS) → A__ISLNAT(XS)
A__SPLITAT(s(N), cons(X, XS)) → A__U321(a__isNatural(N), N, X, XS)
A__SPLITAT(s(N), cons(X, XS)) → A__ISNATURAL(N)
A__TAIL(cons(N, XS)) → A__U331(a__isNatural(N), N, XS)
A__TAIL(cons(N, XS)) → A__ISNATURAL(N)
A__TAKE(N, XS) → A__U341(a__isNatural(N), N, XS)
A__TAKE(N, XS) → A__ISNATURAL(N)
MARK(U101(X1, X2, X3)) → A__U101(mark(X1), X2, X3)
MARK(U101(X1, X2, X3)) → MARK(X1)
MARK(U102(X1, X2, X3)) → A__U102(mark(X1), X2, X3)
MARK(U102(X1, X2, X3)) → MARK(X1)
MARK(isNaturalKind(X)) → A__ISNATURALKIND(X)
MARK(U103(X1, X2, X3)) → A__U103(mark(X1), X2, X3)
MARK(U103(X1, X2, X3)) → MARK(X1)
MARK(isLNatKind(X)) → A__ISLNATKIND(X)
MARK(U104(X1, X2, X3)) → A__U104(mark(X1), X2, X3)
MARK(U104(X1, X2, X3)) → MARK(X1)
MARK(U105(X1, X2)) → A__U105(mark(X1), X2)
MARK(U105(X1, X2)) → MARK(X1)
MARK(isNatural(X)) → A__ISNATURAL(X)
MARK(U106(X)) → A__U106(mark(X))
MARK(U106(X)) → MARK(X)
MARK(isLNat(X)) → A__ISLNAT(X)
MARK(U11(X1, X2, X3)) → A__U11(mark(X1), X2, X3)
MARK(U11(X1, X2, X3)) → MARK(X1)
MARK(U12(X1, X2, X3)) → A__U12(mark(X1), X2, X3)
MARK(U12(X1, X2, X3)) → MARK(X1)
MARK(U111(X1, X2)) → A__U111(mark(X1), X2)
MARK(U111(X1, X2)) → MARK(X1)
MARK(U112(X)) → A__U112(mark(X))
MARK(U112(X)) → MARK(X)
MARK(U13(X1, X2, X3)) → A__U13(mark(X1), X2, X3)
MARK(U13(X1, X2, X3)) → MARK(X1)
MARK(U121(X1, X2)) → A__U121(mark(X1), X2)
MARK(U121(X1, X2)) → MARK(X1)
MARK(U122(X)) → A__U122(mark(X))
MARK(U122(X)) → MARK(X)
MARK(U14(X1, X2, X3)) → A__U14(mark(X1), X2, X3)
MARK(U14(X1, X2, X3)) → MARK(X1)
MARK(U131(X)) → A__U131(mark(X))
MARK(U131(X)) → MARK(X)
MARK(snd(X)) → A__SND(mark(X))
MARK(snd(X)) → MARK(X)
MARK(splitAt(X1, X2)) → A__SPLITAT(mark(X1), mark(X2))
MARK(splitAt(X1, X2)) → MARK(X1)
MARK(splitAt(X1, X2)) → MARK(X2)
MARK(U141(X)) → A__U141(mark(X))
MARK(U141(X)) → MARK(X)
MARK(U151(X)) → A__U151(mark(X))
MARK(U151(X)) → MARK(X)
MARK(U161(X)) → A__U161(mark(X))
MARK(U161(X)) → MARK(X)
MARK(U171(X1, X2)) → A__U171(mark(X1), X2)
MARK(U171(X1, X2)) → MARK(X1)
MARK(U172(X)) → A__U172(mark(X))
MARK(U172(X)) → MARK(X)
MARK(U181(X1, X2)) → A__U181(mark(X1), X2)
MARK(U181(X1, X2)) → MARK(X1)
MARK(U182(X1, X2)) → A__U182(mark(X1), X2)
MARK(U182(X1, X2)) → MARK(X1)
MARK(U183(X)) → A__U183(mark(X))
MARK(U183(X)) → MARK(X)
MARK(U191(X1, X2)) → A__U191(mark(X1), X2)
MARK(U191(X1, X2)) → MARK(X1)
MARK(U192(X1, X2)) → A__U192(mark(X1), X2)
MARK(U192(X1, X2)) → MARK(X1)
MARK(U193(X)) → A__U193(mark(X))
MARK(U193(X)) → MARK(X)
MARK(U201(X1, X2, X3)) → A__U201(mark(X1), X2, X3)
MARK(U201(X1, X2, X3)) → MARK(X1)
MARK(U202(X1, X2, X3)) → A__U202(mark(X1), X2, X3)
MARK(U202(X1, X2, X3)) → MARK(X1)
MARK(U203(X1, X2, X3)) → A__U203(mark(X1), X2, X3)
MARK(U203(X1, X2, X3)) → MARK(X1)
MARK(U204(X1, X2, X3)) → A__U204(mark(X1), X2, X3)
MARK(U204(X1, X2, X3)) → MARK(X1)
MARK(U205(X1, X2)) → A__U205(mark(X1), X2)
MARK(U205(X1, X2)) → MARK(X1)
MARK(U206(X)) → A__U206(mark(X))
MARK(U206(X)) → MARK(X)
MARK(U21(X1, X2, X3)) → A__U21(mark(X1), X2, X3)
MARK(U21(X1, X2, X3)) → MARK(X1)
MARK(U22(X1, X2, X3)) → A__U22(mark(X1), X2, X3)
MARK(U22(X1, X2, X3)) → MARK(X1)
MARK(U211(X)) → A__U211(mark(X))
MARK(U211(X)) → MARK(X)
MARK(U23(X1, X2, X3)) → A__U23(mark(X1), X2, X3)
MARK(U23(X1, X2, X3)) → MARK(X1)
MARK(U221(X)) → A__U221(mark(X))
MARK(U221(X)) → MARK(X)
MARK(U24(X1, X2)) → A__U24(mark(X1), X2)
MARK(U24(X1, X2)) → MARK(X1)
MARK(U231(X1, X2)) → A__U231(mark(X1), X2)
MARK(U231(X1, X2)) → MARK(X1)
MARK(U232(X)) → A__U232(mark(X))
MARK(U232(X)) → MARK(X)
MARK(U241(X1, X2, X3)) → A__U241(mark(X1), X2, X3)
MARK(U241(X1, X2, X3)) → MARK(X1)
MARK(U242(X1, X2, X3)) → A__U242(mark(X1), X2, X3)
MARK(U242(X1, X2, X3)) → MARK(X1)
MARK(U243(X1, X2, X3)) → A__U243(mark(X1), X2, X3)
MARK(U243(X1, X2, X3)) → MARK(X1)
MARK(U244(X1, X2, X3)) → A__U244(mark(X1), X2, X3)
MARK(U244(X1, X2, X3)) → MARK(X1)
MARK(U245(X1, X2)) → A__U245(mark(X1), X2)
MARK(U245(X1, X2)) → MARK(X1)
MARK(U246(X)) → A__U246(mark(X))
MARK(U246(X)) → MARK(X)
MARK(U251(X1, X2, X3)) → A__U251(mark(X1), X2, X3)
MARK(U251(X1, X2, X3)) → MARK(X1)
MARK(U252(X1, X2, X3)) → A__U252(mark(X1), X2, X3)
MARK(U252(X1, X2, X3)) → MARK(X1)
MARK(U253(X1, X2, X3)) → A__U253(mark(X1), X2, X3)
MARK(U253(X1, X2, X3)) → MARK(X1)
MARK(U254(X1, X2, X3)) → A__U254(mark(X1), X2, X3)
MARK(U254(X1, X2, X3)) → MARK(X1)
MARK(U255(X1, X2)) → A__U255(mark(X1), X2)
MARK(U255(X1, X2)) → MARK(X1)
MARK(U256(X)) → A__U256(mark(X))
MARK(U256(X)) → MARK(X)
MARK(U261(X1, X2)) → A__U261(mark(X1), X2)
MARK(U261(X1, X2)) → MARK(X1)
MARK(U262(X)) → A__U262(mark(X))
MARK(U262(X)) → MARK(X)
MARK(U271(X1, X2)) → A__U271(mark(X1), X2)
MARK(U271(X1, X2)) → MARK(X1)
MARK(U272(X)) → A__U272(mark(X))
MARK(U272(X)) → MARK(X)
MARK(U281(X1, X2)) → A__U281(mark(X1), X2)
MARK(U281(X1, X2)) → MARK(X1)
MARK(U282(X1, X2)) → A__U282(mark(X1), X2)
MARK(U282(X1, X2)) → MARK(X1)
MARK(natsFrom(X)) → A__NATSFROM(mark(X))
MARK(natsFrom(X)) → MARK(X)
MARK(U291(X1, X2, X3)) → A__U291(mark(X1), X2, X3)
MARK(U291(X1, X2, X3)) → MARK(X1)
MARK(U292(X1, X2, X3)) → A__U292(mark(X1), X2, X3)
MARK(U292(X1, X2, X3)) → MARK(X1)
MARK(U293(X1, X2, X3)) → A__U293(mark(X1), X2, X3)
MARK(U293(X1, X2, X3)) → MARK(X1)
MARK(U294(X1, X2, X3)) → A__U294(mark(X1), X2, X3)
MARK(U294(X1, X2, X3)) → MARK(X1)
MARK(head(X)) → A__HEAD(mark(X))
MARK(head(X)) → MARK(X)
MARK(afterNth(X1, X2)) → A__AFTERNTH(mark(X1), mark(X2))
MARK(afterNth(X1, X2)) → MARK(X1)
MARK(afterNth(X1, X2)) → MARK(X2)
MARK(U301(X1, X2, X3)) → A__U301(mark(X1), X2, X3)
MARK(U301(X1, X2, X3)) → MARK(X1)
MARK(U302(X1, X2)) → A__U302(mark(X1), X2)
MARK(U302(X1, X2)) → MARK(X1)
MARK(U303(X1, X2)) → A__U303(mark(X1), X2)
MARK(U303(X1, X2)) → MARK(X1)
MARK(U304(X1, X2)) → A__U304(mark(X1), X2)
MARK(U304(X1, X2)) → MARK(X1)
MARK(U31(X1, X2, X3)) → A__U31(mark(X1), X2, X3)
MARK(U31(X1, X2, X3)) → MARK(X1)
MARK(U32(X1, X2, X3)) → A__U32(mark(X1), X2, X3)
MARK(U32(X1, X2, X3)) → MARK(X1)
MARK(U311(X1, X2)) → A__U311(mark(X1), X2)
MARK(U311(X1, X2)) → MARK(X1)
MARK(U312(X1, X2)) → A__U312(mark(X1), X2)
MARK(U312(X1, X2)) → MARK(X1)
MARK(U33(X1, X2, X3)) → A__U33(mark(X1), X2, X3)
MARK(U33(X1, X2, X3)) → MARK(X1)
MARK(U321(X1, X2, X3, X4)) → A__U321(mark(X1), X2, X3, X4)
MARK(U321(X1, X2, X3, X4)) → MARK(X1)
MARK(U322(X1, X2, X3, X4)) → A__U322(mark(X1), X2, X3, X4)
MARK(U322(X1, X2, X3, X4)) → MARK(X1)
MARK(U323(X1, X2, X3, X4)) → A__U323(mark(X1), X2, X3, X4)
MARK(U323(X1, X2, X3, X4)) → MARK(X1)
MARK(U324(X1, X2, X3, X4)) → A__U324(mark(X1), X2, X3, X4)
MARK(U324(X1, X2, X3, X4)) → MARK(X1)
MARK(U325(X1, X2, X3, X4)) → A__U325(mark(X1), X2, X3, X4)
MARK(U325(X1, X2, X3, X4)) → MARK(X1)
MARK(U326(X1, X2, X3, X4)) → A__U326(mark(X1), X2, X3, X4)
MARK(U326(X1, X2, X3, X4)) → MARK(X1)
MARK(U327(X1, X2)) → A__U327(mark(X1), X2)
MARK(U327(X1, X2)) → MARK(X1)
MARK(U34(X1, X2)) → A__U34(mark(X1), X2)
MARK(U34(X1, X2)) → MARK(X1)
MARK(U331(X1, X2, X3)) → A__U331(mark(X1), X2, X3)
MARK(U331(X1, X2, X3)) → MARK(X1)
MARK(U332(X1, X2)) → A__U332(mark(X1), X2)
MARK(U332(X1, X2)) → MARK(X1)
MARK(U333(X1, X2)) → A__U333(mark(X1), X2)
MARK(U333(X1, X2)) → MARK(X1)
MARK(U334(X1, X2)) → A__U334(mark(X1), X2)
MARK(U334(X1, X2)) → MARK(X1)
MARK(U341(X1, X2, X3)) → A__U341(mark(X1), X2, X3)
MARK(U341(X1, X2, X3)) → MARK(X1)
MARK(U342(X1, X2, X3)) → A__U342(mark(X1), X2, X3)
MARK(U342(X1, X2, X3)) → MARK(X1)
MARK(U343(X1, X2, X3)) → A__U343(mark(X1), X2, X3)
MARK(U343(X1, X2, X3)) → MARK(X1)
MARK(U344(X1, X2, X3)) → A__U344(mark(X1), X2, X3)
MARK(U344(X1, X2, X3)) → MARK(X1)
MARK(fst(X)) → A__FST(mark(X))
MARK(fst(X)) → MARK(X)
MARK(U41(X1, X2, X3)) → A__U41(mark(X1), X2, X3)
MARK(U41(X1, X2, X3)) → MARK(X1)
MARK(U42(X1, X2, X3)) → A__U42(mark(X1), X2, X3)
MARK(U42(X1, X2, X3)) → MARK(X1)
MARK(U43(X1, X2, X3)) → A__U43(mark(X1), X2, X3)
MARK(U43(X1, X2, X3)) → MARK(X1)
MARK(U44(X1, X2, X3)) → A__U44(mark(X1), X2, X3)
MARK(U44(X1, X2, X3)) → MARK(X1)
MARK(U45(X1, X2)) → A__U45(mark(X1), X2)
MARK(U45(X1, X2)) → MARK(X1)
MARK(U46(X)) → A__U46(mark(X))
MARK(U46(X)) → MARK(X)
MARK(U51(X1, X2, X3)) → A__U51(mark(X1), X2, X3)
MARK(U51(X1, X2, X3)) → MARK(X1)
MARK(U52(X1, X2, X3)) → A__U52(mark(X1), X2, X3)
MARK(U52(X1, X2, X3)) → MARK(X1)
MARK(U53(X1, X2, X3)) → A__U53(mark(X1), X2, X3)
MARK(U53(X1, X2, X3)) → MARK(X1)
MARK(U54(X1, X2, X3)) → A__U54(mark(X1), X2, X3)
MARK(U54(X1, X2, X3)) → MARK(X1)
MARK(U55(X1, X2)) → A__U55(mark(X1), X2)
MARK(U55(X1, X2)) → MARK(X1)
MARK(U56(X)) → A__U56(mark(X))
MARK(U56(X)) → MARK(X)
MARK(U61(X1, X2)) → A__U61(mark(X1), X2)
MARK(U61(X1, X2)) → MARK(X1)
MARK(U62(X1, X2)) → A__U62(mark(X1), X2)
MARK(U62(X1, X2)) → MARK(X1)
MARK(isPLNatKind(X)) → A__ISPLNATKIND(X)
MARK(U63(X)) → A__U63(mark(X))
MARK(U63(X)) → MARK(X)
MARK(isPLNat(X)) → A__ISPLNAT(X)
MARK(U71(X1, X2)) → A__U71(mark(X1), X2)
MARK(U71(X1, X2)) → MARK(X1)
MARK(U72(X1, X2)) → A__U72(mark(X1), X2)
MARK(U72(X1, X2)) → MARK(X1)
MARK(U73(X)) → A__U73(mark(X))
MARK(U73(X)) → MARK(X)
MARK(U81(X1, X2)) → A__U81(mark(X1), X2)
MARK(U81(X1, X2)) → MARK(X1)
MARK(U82(X1, X2)) → A__U82(mark(X1), X2)
MARK(U82(X1, X2)) → MARK(X1)
MARK(U83(X)) → A__U83(mark(X))
MARK(U83(X)) → MARK(X)
MARK(U91(X1, X2)) → A__U91(mark(X1), X2)
MARK(U91(X1, X2)) → MARK(X1)
MARK(U92(X1, X2)) → A__U92(mark(X1), X2)
MARK(U92(X1, X2)) → MARK(X1)
MARK(U93(X)) → A__U93(mark(X))
MARK(U93(X)) → MARK(X)
MARK(tail(X)) → A__TAIL(mark(X))
MARK(tail(X)) → MARK(X)
MARK(take(X1, X2)) → A__TAKE(mark(X1), mark(X2))
MARK(take(X1, X2)) → MARK(X1)
MARK(take(X1, X2)) → MARK(X2)
MARK(sel(X1, X2)) → A__SEL(mark(X1), mark(X2))
MARK(sel(X1, X2)) → MARK(X1)
MARK(sel(X1, X2)) → MARK(X2)
MARK(cons(X1, X2)) → MARK(X1)
MARK(s(X)) → MARK(X)
MARK(pair(X1, X2)) → MARK(X1)
MARK(pair(X1, X2)) → MARK(X2)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(3) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 176 less nodes.

(4) Complex Obligation (AND)

(5) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__U111(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(afterNth(V1, V2)) → A__U111(a__isNaturalKind(V1), V2)
A__ISLNATKIND(afterNth(V1, V2)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(head(V1)) → A__ISLNATKIND(V1)
A__ISLNATKIND(cons(V1, V2)) → A__U121(a__isNaturalKind(V1), V2)
A__U121(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(cons(V1, V2)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(s(V1)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(sel(V1, V2)) → A__U231(a__isNaturalKind(V1), V2)
A__U231(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(fst(V1)) → A__ISPLNATKIND(V1)
A__ISPLNATKIND(pair(V1, V2)) → A__U261(a__isLNatKind(V1), V2)
A__U261(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(natsFrom(V1)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(sel(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(snd(V1)) → A__ISPLNATKIND(V1)
A__ISPLNATKIND(pair(V1, V2)) → A__ISLNATKIND(V1)
A__ISLNATKIND(tail(V1)) → A__ISLNATKIND(V1)
A__ISLNATKIND(take(V1, V2)) → A__U171(a__isNaturalKind(V1), V2)
A__U171(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(take(V1, V2)) → A__ISNATURALKIND(V1)
A__ISPLNATKIND(splitAt(V1, V2)) → A__U271(a__isNaturalKind(V1), V2)
A__U271(tt, V2) → A__ISLNATKIND(V2)
A__ISPLNATKIND(splitAt(V1, V2)) → A__ISNATURALKIND(V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(6) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


A__U111(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(afterNth(V1, V2)) → A__U111(a__isNaturalKind(V1), V2)
A__ISLNATKIND(afterNth(V1, V2)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(head(V1)) → A__ISLNATKIND(V1)
A__ISLNATKIND(cons(V1, V2)) → A__U121(a__isNaturalKind(V1), V2)
A__U121(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(cons(V1, V2)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(sel(V1, V2)) → A__U231(a__isNaturalKind(V1), V2)
A__U231(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(fst(V1)) → A__ISPLNATKIND(V1)
A__ISPLNATKIND(pair(V1, V2)) → A__U261(a__isLNatKind(V1), V2)
A__U261(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(natsFrom(V1)) → A__ISNATURALKIND(V1)
A__ISNATURALKIND(sel(V1, V2)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(snd(V1)) → A__ISPLNATKIND(V1)
A__ISPLNATKIND(pair(V1, V2)) → A__ISLNATKIND(V1)
A__ISLNATKIND(take(V1, V2)) → A__U171(a__isNaturalKind(V1), V2)
A__U171(tt, V2) → A__ISLNATKIND(V2)
A__ISLNATKIND(take(V1, V2)) → A__ISNATURALKIND(V1)
A__ISPLNATKIND(splitAt(V1, V2)) → A__U271(a__isNaturalKind(V1), V2)
A__U271(tt, V2) → A__ISLNATKIND(V2)
A__ISPLNATKIND(splitAt(V1, V2)) → A__ISNATURALKIND(V1)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
A__U111(x1, x2)  =  A__U111(x2)
tt  =  tt
A__ISLNATKIND(x1)  =  A__ISLNATKIND(x1)
afterNth(x1, x2)  =  afterNth(x1, x2)
a__isNaturalKind(x1)  =  a__isNaturalKind(x1)
A__ISNATURALKIND(x1)  =  A__ISNATURALKIND(x1)
head(x1)  =  head(x1)
cons(x1, x2)  =  cons(x1, x2)
A__U121(x1, x2)  =  A__U121(x2)
s(x1)  =  x1
sel(x1, x2)  =  sel(x1, x2)
A__U231(x1, x2)  =  A__U231(x2)
fst(x1)  =  fst(x1)
A__ISPLNATKIND(x1)  =  A__ISPLNATKIND(x1)
pair(x1, x2)  =  pair(x1, x2)
A__U261(x1, x2)  =  A__U261(x2)
a__isLNatKind(x1)  =  a__isLNatKind
natsFrom(x1)  =  natsFrom(x1)
snd(x1)  =  x1
tail(x1)  =  x1
take(x1, x2)  =  take(x1, x2)
A__U171(x1, x2)  =  A__U171(x2)
splitAt(x1, x2)  =  splitAt(x1, x2)
A__U271(x1, x2)  =  A__U271(x2)
a__U171(x1, x2)  =  a__U171(x1)
0  =  0
a__U211(x1)  =  a__U211(x1)
a__U221(x1)  =  a__U221
a__U231(x1, x2)  =  a__U231(x1)
a__isPLNatKind(x1)  =  a__isPLNatKind
a__U261(x1, x2)  =  a__U261
a__U271(x1, x2)  =  a__U271
isNaturalKind(x1)  =  x1
isLNatKind(x1)  =  isLNatKind(x1)
isPLNatKind(x1)  =  isPLNatKind(x1)
a__U131(x1)  =  a__U131(x1)
U131(x1)  =  U131(x1)
a__U122(x1)  =  a__U122(x1)
U122(x1)  =  U122
a__U161(x1)  =  a__U161(x1)
U161(x1)  =  U161(x1)
a__U151(x1)  =  a__U151
U151(x1)  =  U151(x1)
a__U141(x1)  =  a__U141(x1)
U141(x1)  =  U141(x1)
a__U121(x1, x2)  =  x1
U121(x1, x2)  =  U121(x1, x2)
a__U112(x1)  =  a__U112(x1)
U112(x1)  =  U112(x1)
a__U111(x1, x2)  =  a__U111(x1)
U111(x1, x2)  =  U111(x2)
U171(x1, x2)  =  U171(x1, x2)
a__U172(x1)  =  a__U172
U172(x1)  =  x1
a__U272(x1)  =  a__U272
U272(x1)  =  U272(x1)
U271(x1, x2)  =  U271(x2)
a__U262(x1)  =  a__U262
U262(x1)  =  U262(x1)
U261(x1, x2)  =  U261(x1, x2)
U231(x1, x2)  =  U231(x1, x2)
a__U232(x1)  =  x1
U232(x1)  =  U232(x1)
U221(x1)  =  x1
U211(x1)  =  x1
nil  =  nil

Recursive path order with status [RPO].
Precedence:
afterNth2 > AU1111 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
afterNth2 > AISNATURALKIND1 > AU2311 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
afterNth2 > aU1111 > aU1121 > aisPLNatKind
afterNth2 > aU1111 > U1111 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1711 > U1712 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1311 > U1311 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1611 > tt > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1611 > tt > aU1221 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1611 > tt > aU1121 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1611 > tt > aU172 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1611 > tt > aU272 > U2721 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1611 > tt > aU262 > U2621 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > tt > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > tt > aU1221 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > tt > aU1121 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > tt > aU172 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > tt > aU272 > U2721 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > tt > aU262 > U2621 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU151 > U1511 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1411 > tt > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1411 > tt > aU1221 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1411 > tt > aU1121 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1411 > tt > aU172 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1411 > tt > aU272 > U2721 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1411 > tt > aU262 > U2621 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1111 > aU1121 > aisPLNatKind
aisNaturalKind1 > aisLNatKind > aU1111 > U1111 > aisPLNatKind
aisNaturalKind1 > aU221 > aisPLNatKind
aisNaturalKind1 > aU2311 > aisPLNatKind
head1 > aisPLNatKind
cons2 > AISNATURALKIND1 > AU2311 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
cons2 > AU1211 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
sel2 > AISNATURALKIND1 > AU2311 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
sel2 > aU2311 > aisPLNatKind
fst1 > aU1311 > U1311 > aisPLNatKind
pair2 > AU2611 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
pair2 > aU261 > U2612 > aisPLNatKind
natsFrom1 > AISNATURALKIND1 > AU2311 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
take2 > AISNATURALKIND1 > AU2311 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
take2 > AU1711 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
take2 > aU1711 > U1712 > aisPLNatKind
splitAt2 > AISNATURALKIND1 > AU2311 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
splitAt2 > AU2711 > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
0 > aisPLNatKind
aU2111 > tt > AISLNATKIND1 > AISPLNATKIND1 > aisPLNatKind
aU2111 > tt > aU1221 > aisPLNatKind
aU2111 > tt > aU1121 > aisPLNatKind
aU2111 > tt > aU172 > aisPLNatKind
aU2111 > tt > aU272 > U2721 > aisPLNatKind
aU2111 > tt > aU262 > U2621 > aisPLNatKind
aU271 > aU272 > U2721 > aisPLNatKind
aU271 > U2711 > aisPLNatKind
isLNatKind1 > aisPLNatKind
isPLNatKind1 > aisPLNatKind
U122 > aisPLNatKind
U1611 > aisPLNatKind
U1411 > aisPLNatKind
U1212 > aisPLNatKind
U1121 > aisPLNatKind
U2312 > aisPLNatKind
U2321 > aisPLNatKind
nil > aisPLNatKind

Status:
aU1611: multiset
sel2: multiset
U1511: multiset
isPLNatKind1: multiset
take2: multiset
AU1211: multiset
tt: multiset
U1411: multiset
AU1111: multiset
pair2: multiset
aisLNatKind: []
AISPLNATKIND1: multiset
U2721: multiset
nil: multiset
U122: multiset
U2621: multiset
afterNth2: multiset
aU221: multiset
aU2111: multiset
AU2311: multiset
AU1711: multiset
U1212: multiset
aU172: multiset
U1311: multiset
aisPLNatKind: multiset
AU2711: multiset
U2612: multiset
U2312: multiset
aU1711: multiset
aU261: multiset
aU272: multiset
aisNaturalKind1: multiset
splitAt2: multiset
aU262: multiset
aU1111: multiset
isLNatKind1: multiset
aU271: multiset
U2711: multiset
U2321: multiset
aU1121: multiset
U1111: multiset
natsFrom1: multiset
AISLNATKIND1: [1]
aU1311: multiset
aU151: multiset
head1: multiset
U1611: multiset
aU1221: multiset
aU1411: multiset
0: multiset
AISNATURALKIND1: multiset
cons2: multiset
U1121: multiset
fst1: multiset
aU2311: multiset
U1712: multiset
AU2611: multiset

The following usable rules [FROCOS05] were oriented: none

(7) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__ISNATURALKIND(s(V1)) → A__ISNATURALKIND(V1)
A__ISLNATKIND(tail(V1)) → A__ISLNATKIND(V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(8) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs.

(9) Complex Obligation (AND)

(10) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__ISLNATKIND(tail(V1)) → A__ISLNATKIND(V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(11) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


A__ISLNATKIND(tail(V1)) → A__ISLNATKIND(V1)
The remaining pairs can at least be oriented weakly.
Used ordering: Recursive path order with status [RPO].
Precedence:
tail1 > AISLNATKIND1

Status:
tail1: multiset
AISLNATKIND1: multiset

The following usable rules [FROCOS05] were oriented: none

(12) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(13) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(14) TRUE

(15) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__ISNATURALKIND(s(V1)) → A__ISNATURALKIND(V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(16) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


A__ISNATURALKIND(s(V1)) → A__ISNATURALKIND(V1)
The remaining pairs can at least be oriented weakly.
Used ordering: Recursive path order with status [RPO].
Precedence:
s1 > AISNATURALKIND1

Status:
s1: multiset
AISNATURALKIND1: multiset

The following usable rules [FROCOS05] were oriented: none

(17) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(18) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(19) TRUE

(20) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__U102(tt, V1, V2) → A__U103(a__isLNatKind(V2), V1, V2)
A__U103(tt, V1, V2) → A__U104(a__isLNatKind(V2), V1, V2)
A__U104(tt, V1, V2) → A__U105(a__isNatural(V1), V2)
A__U105(tt, V2) → A__ISLNAT(V2)
A__ISLNAT(afterNth(V1, V2)) → A__U41(a__isNaturalKind(V1), V1, V2)
A__U41(tt, V1, V2) → A__U42(a__isNaturalKind(V1), V1, V2)
A__U42(tt, V1, V2) → A__U43(a__isLNatKind(V2), V1, V2)
A__U43(tt, V1, V2) → A__U44(a__isLNatKind(V2), V1, V2)
A__U44(tt, V1, V2) → A__U45(a__isNatural(V1), V2)
A__U45(tt, V2) → A__ISLNAT(V2)
A__ISLNAT(cons(V1, V2)) → A__U51(a__isNaturalKind(V1), V1, V2)
A__U51(tt, V1, V2) → A__U52(a__isNaturalKind(V1), V1, V2)
A__U52(tt, V1, V2) → A__U53(a__isLNatKind(V2), V1, V2)
A__U53(tt, V1, V2) → A__U54(a__isLNatKind(V2), V1, V2)
A__U54(tt, V1, V2) → A__U55(a__isNatural(V1), V2)
A__U55(tt, V2) → A__ISLNAT(V2)
A__ISLNAT(fst(V1)) → A__U61(a__isPLNatKind(V1), V1)
A__U61(tt, V1) → A__U62(a__isPLNatKind(V1), V1)
A__U62(tt, V1) → A__ISPLNAT(V1)
A__ISPLNAT(pair(V1, V2)) → A__U241(a__isLNatKind(V1), V1, V2)
A__U241(tt, V1, V2) → A__U242(a__isLNatKind(V1), V1, V2)
A__U242(tt, V1, V2) → A__U243(a__isLNatKind(V2), V1, V2)
A__U243(tt, V1, V2) → A__U244(a__isLNatKind(V2), V1, V2)
A__U244(tt, V1, V2) → A__U245(a__isLNat(V1), V2)
A__U245(tt, V2) → A__ISLNAT(V2)
A__ISLNAT(natsFrom(V1)) → A__U71(a__isNaturalKind(V1), V1)
A__U71(tt, V1) → A__U72(a__isNaturalKind(V1), V1)
A__U72(tt, V1) → A__ISNATURAL(V1)
A__ISNATURAL(head(V1)) → A__U181(a__isLNatKind(V1), V1)
A__U181(tt, V1) → A__U182(a__isLNatKind(V1), V1)
A__U182(tt, V1) → A__ISLNAT(V1)
A__ISLNAT(snd(V1)) → A__U81(a__isPLNatKind(V1), V1)
A__U81(tt, V1) → A__U82(a__isPLNatKind(V1), V1)
A__U82(tt, V1) → A__ISPLNAT(V1)
A__ISPLNAT(splitAt(V1, V2)) → A__U251(a__isNaturalKind(V1), V1, V2)
A__U251(tt, V1, V2) → A__U252(a__isNaturalKind(V1), V1, V2)
A__U252(tt, V1, V2) → A__U253(a__isLNatKind(V2), V1, V2)
A__U253(tt, V1, V2) → A__U254(a__isLNatKind(V2), V1, V2)
A__U254(tt, V1, V2) → A__U255(a__isNatural(V1), V2)
A__U255(tt, V2) → A__ISLNAT(V2)
A__ISLNAT(tail(V1)) → A__U91(a__isLNatKind(V1), V1)
A__U91(tt, V1) → A__U92(a__isLNatKind(V1), V1)
A__U92(tt, V1) → A__ISLNAT(V1)
A__ISLNAT(take(V1, V2)) → A__U101(a__isNaturalKind(V1), V1, V2)
A__U101(tt, V1, V2) → A__U102(a__isNaturalKind(V1), V1, V2)
A__U254(tt, V1, V2) → A__ISNATURAL(V1)
A__ISNATURAL(s(V1)) → A__U191(a__isNaturalKind(V1), V1)
A__U191(tt, V1) → A__U192(a__isNaturalKind(V1), V1)
A__U192(tt, V1) → A__ISNATURAL(V1)
A__ISNATURAL(sel(V1, V2)) → A__U201(a__isNaturalKind(V1), V1, V2)
A__U201(tt, V1, V2) → A__U202(a__isNaturalKind(V1), V1, V2)
A__U202(tt, V1, V2) → A__U203(a__isLNatKind(V2), V1, V2)
A__U203(tt, V1, V2) → A__U204(a__isLNatKind(V2), V1, V2)
A__U204(tt, V1, V2) → A__U205(a__isNatural(V1), V2)
A__U205(tt, V2) → A__ISLNAT(V2)
A__U204(tt, V1, V2) → A__ISNATURAL(V1)
A__U244(tt, V1, V2) → A__ISLNAT(V1)
A__U54(tt, V1, V2) → A__ISNATURAL(V1)
A__U44(tt, V1, V2) → A__ISNATURAL(V1)
A__U104(tt, V1, V2) → A__ISNATURAL(V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(21) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


A__U102(tt, V1, V2) → A__U103(a__isLNatKind(V2), V1, V2)
A__U103(tt, V1, V2) → A__U104(a__isLNatKind(V2), V1, V2)
A__U104(tt, V1, V2) → A__U105(a__isNatural(V1), V2)
A__U105(tt, V2) → A__ISLNAT(V2)
A__ISLNAT(afterNth(V1, V2)) → A__U41(a__isNaturalKind(V1), V1, V2)
A__U41(tt, V1, V2) → A__U42(a__isNaturalKind(V1), V1, V2)
A__U42(tt, V1, V2) → A__U43(a__isLNatKind(V2), V1, V2)
A__U43(tt, V1, V2) → A__U44(a__isLNatKind(V2), V1, V2)
A__U44(tt, V1, V2) → A__U45(a__isNatural(V1), V2)
A__ISLNAT(cons(V1, V2)) → A__U51(a__isNaturalKind(V1), V1, V2)
A__U51(tt, V1, V2) → A__U52(a__isNaturalKind(V1), V1, V2)
A__U52(tt, V1, V2) → A__U53(a__isLNatKind(V2), V1, V2)
A__U53(tt, V1, V2) → A__U54(a__isLNatKind(V2), V1, V2)
A__U54(tt, V1, V2) → A__U55(a__isNatural(V1), V2)
A__ISLNAT(fst(V1)) → A__U61(a__isPLNatKind(V1), V1)
A__U61(tt, V1) → A__U62(a__isPLNatKind(V1), V1)
A__U62(tt, V1) → A__ISPLNAT(V1)
A__ISPLNAT(pair(V1, V2)) → A__U241(a__isLNatKind(V1), V1, V2)
A__U241(tt, V1, V2) → A__U242(a__isLNatKind(V1), V1, V2)
A__U242(tt, V1, V2) → A__U243(a__isLNatKind(V2), V1, V2)
A__U243(tt, V1, V2) → A__U244(a__isLNatKind(V2), V1, V2)
A__U244(tt, V1, V2) → A__U245(a__isLNat(V1), V2)
A__ISLNAT(natsFrom(V1)) → A__U71(a__isNaturalKind(V1), V1)
A__U71(tt, V1) → A__U72(a__isNaturalKind(V1), V1)
A__U72(tt, V1) → A__ISNATURAL(V1)
A__ISNATURAL(head(V1)) → A__U181(a__isLNatKind(V1), V1)
A__U181(tt, V1) → A__U182(a__isLNatKind(V1), V1)
A__ISLNAT(snd(V1)) → A__U81(a__isPLNatKind(V1), V1)
A__U81(tt, V1) → A__U82(a__isPLNatKind(V1), V1)
A__U82(tt, V1) → A__ISPLNAT(V1)
A__ISPLNAT(splitAt(V1, V2)) → A__U251(a__isNaturalKind(V1), V1, V2)
A__U251(tt, V1, V2) → A__U252(a__isNaturalKind(V1), V1, V2)
A__U252(tt, V1, V2) → A__U253(a__isLNatKind(V2), V1, V2)
A__U253(tt, V1, V2) → A__U254(a__isLNatKind(V2), V1, V2)
A__U254(tt, V1, V2) → A__U255(a__isNatural(V1), V2)
A__ISLNAT(tail(V1)) → A__U91(a__isLNatKind(V1), V1)
A__ISLNAT(take(V1, V2)) → A__U101(a__isNaturalKind(V1), V1, V2)
A__U101(tt, V1, V2) → A__U102(a__isNaturalKind(V1), V1, V2)
A__U254(tt, V1, V2) → A__ISNATURAL(V1)
A__ISNATURAL(sel(V1, V2)) → A__U201(a__isNaturalKind(V1), V1, V2)
A__U201(tt, V1, V2) → A__U202(a__isNaturalKind(V1), V1, V2)
A__U202(tt, V1, V2) → A__U203(a__isLNatKind(V2), V1, V2)
A__U203(tt, V1, V2) → A__U204(a__isLNatKind(V2), V1, V2)
A__U204(tt, V1, V2) → A__U205(a__isNatural(V1), V2)
A__U204(tt, V1, V2) → A__ISNATURAL(V1)
A__U244(tt, V1, V2) → A__ISLNAT(V1)
A__U54(tt, V1, V2) → A__ISNATURAL(V1)
A__U44(tt, V1, V2) → A__ISNATURAL(V1)
A__U104(tt, V1, V2) → A__ISNATURAL(V1)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
A__U102(x1, x2, x3)  =  A__U102(x2, x3)
tt  =  tt
A__U103(x1, x2, x3)  =  A__U103(x2, x3)
a__isLNatKind(x1)  =  a__isLNatKind(x1)
A__U104(x1, x2, x3)  =  A__U104(x2, x3)
A__U105(x1, x2)  =  A__U105(x2)
a__isNatural(x1)  =  x1
A__ISLNAT(x1)  =  x1
afterNth(x1, x2)  =  afterNth(x1, x2)
A__U41(x1, x2, x3)  =  A__U41(x2, x3)
a__isNaturalKind(x1)  =  a__isNaturalKind
A__U42(x1, x2, x3)  =  A__U42(x2, x3)
A__U43(x1, x2, x3)  =  A__U43(x2, x3)
A__U44(x1, x2, x3)  =  A__U44(x2, x3)
A__U45(x1, x2)  =  x2
cons(x1, x2)  =  cons(x1, x2)
A__U51(x1, x2, x3)  =  A__U51(x2, x3)
A__U52(x1, x2, x3)  =  A__U52(x2, x3)
A__U53(x1, x2, x3)  =  A__U53(x2, x3)
A__U54(x1, x2, x3)  =  A__U54(x2, x3)
A__U55(x1, x2)  =  x2
fst(x1)  =  fst(x1)
A__U61(x1, x2)  =  A__U61(x2)
a__isPLNatKind(x1)  =  a__isPLNatKind(x1)
A__U62(x1, x2)  =  A__U62(x2)
A__ISPLNAT(x1)  =  A__ISPLNAT(x1)
pair(x1, x2)  =  pair(x1, x2)
A__U241(x1, x2, x3)  =  A__U241(x2, x3)
A__U242(x1, x2, x3)  =  A__U242(x2, x3)
A__U243(x1, x2, x3)  =  A__U243(x2, x3)
A__U244(x1, x2, x3)  =  A__U244(x2, x3)
A__U245(x1, x2)  =  x2
a__isLNat(x1)  =  a__isLNat
natsFrom(x1)  =  natsFrom(x1)
A__U71(x1, x2)  =  A__U71(x2)
A__U72(x1, x2)  =  A__U72(x2)
A__ISNATURAL(x1)  =  x1
head(x1)  =  head(x1)
A__U181(x1, x2)  =  A__U181(x2)
A__U182(x1, x2)  =  x2
snd(x1)  =  snd(x1)
A__U81(x1, x2)  =  A__U81(x2)
A__U82(x1, x2)  =  A__U82(x2)
splitAt(x1, x2)  =  splitAt(x1, x2)
A__U251(x1, x2, x3)  =  A__U251(x2, x3)
A__U252(x1, x2, x3)  =  A__U252(x2, x3)
A__U253(x1, x2, x3)  =  A__U253(x2, x3)
A__U254(x1, x2, x3)  =  A__U254(x2, x3)
A__U255(x1, x2)  =  x2
tail(x1)  =  tail(x1)
A__U91(x1, x2)  =  x2
A__U92(x1, x2)  =  x2
take(x1, x2)  =  take(x1, x2)
A__U101(x1, x2, x3)  =  A__U101(x2, x3)
s(x1)  =  x1
A__U191(x1, x2)  =  x2
A__U192(x1, x2)  =  x2
sel(x1, x2)  =  sel(x1, x2)
A__U201(x1, x2, x3)  =  A__U201(x2, x3)
A__U202(x1, x2, x3)  =  A__U202(x2, x3)
A__U203(x1, x2, x3)  =  A__U203(x2, x3)
A__U204(x1, x2, x3)  =  A__U204(x2, x3)
A__U205(x1, x2)  =  x2
a__U171(x1, x2)  =  a__U171(x1)
a__U93(x1)  =  a__U93
U93(x1)  =  U93
0  =  0
a__U92(x1, x2)  =  x1
U92(x1, x2)  =  U92(x1, x2)
a__U181(x1, x2)  =  x1
a__U91(x1, x2)  =  x2
U91(x1, x2)  =  U91(x1, x2)
a__U191(x1, x2)  =  a__U191
a__U201(x1, x2, x3)  =  a__U201(x2)
a__U211(x1)  =  a__U211
a__U221(x1)  =  x1
a__U231(x1, x2)  =  a__U231
a__isPLNat(x1)  =  a__isPLNat(x1)
a__U241(x1, x2, x3)  =  a__U241(x3)
a__U251(x1, x2, x3)  =  x1
a__U261(x1, x2)  =  x2
a__U271(x1, x2)  =  a__U271
a__U54(x1, x2, x3)  =  a__U54(x1, x2, x3)
U54(x1, x2, x3)  =  U54(x1, x2, x3)
a__U55(x1, x2)  =  x2
U55(x1, x2)  =  U55(x1, x2)
a__U52(x1, x2, x3)  =  a__U52(x2, x3)
U52(x1, x2, x3)  =  U52(x1, x2, x3)
a__U53(x1, x2, x3)  =  a__U53(x3)
U53(x1, x2, x3)  =  U53(x1, x2, x3)
a__U62(x1, x2)  =  a__U62
U62(x1, x2)  =  U62(x1, x2)
isPLNatKind(x1)  =  isPLNatKind
a__U56(x1)  =  x1
U56(x1)  =  U56
a__U61(x1, x2)  =  a__U61
U61(x1, x2)  =  U61(x1, x2)
a__U71(x1, x2)  =  x2
U71(x1, x2)  =  U71(x1, x2)
a__U72(x1, x2)  =  x1
U72(x1, x2)  =  x1
a__U63(x1)  =  a__U63
U63(x1)  =  U63
isPLNat(x1)  =  isPLNat
a__U82(x1, x2)  =  a__U82
U82(x1, x2)  =  U82(x1, x2)
a__U83(x1)  =  a__U83
U83(x1)  =  U83
a__U73(x1)  =  x1
U73(x1)  =  U73(x1)
a__U81(x1, x2)  =  a__U81
U81(x1, x2)  =  U81(x1, x2)
a__U272(x1)  =  x1
U272(x1)  =  U272
U271(x1, x2)  =  U271(x1, x2)
a__U262(x1)  =  a__U262
U262(x1)  =  x1
U261(x1, x2)  =  U261(x1, x2)
a__U256(x1)  =  a__U256(x1)
U256(x1)  =  U256
a__U255(x1, x2)  =  a__U255(x2)
U255(x1, x2)  =  U255(x1, x2)
U241(x1, x2, x3)  =  U241(x1, x2, x3)
a__U242(x1, x2, x3)  =  a__U242(x2, x3)
U242(x1, x2, x3)  =  U242(x1, x2, x3)
U231(x1, x2)  =  U231(x1, x2)
a__U42(x1, x2, x3)  =  a__U42(x1, x3)
a__U43(x1, x2, x3)  =  a__U43(x1, x2, x3)
a__U232(x1)  =  a__U232
U232(x1)  =  U232
a__U41(x1, x2, x3)  =  x3
U221(x1)  =  U221
U211(x1)  =  U211
a__U253(x1, x2, x3)  =  a__U253(x1, x2, x3)
U253(x1, x2, x3)  =  U253(x1, x2, x3)
a__U254(x1, x2, x3)  =  a__U254(x3)
U254(x1, x2, x3)  =  U254(x1, x2, x3)
a__U51(x1, x2, x3)  =  x3
U251(x1, x2, x3)  =  U251(x1, x2, x3)
a__U252(x1, x2, x3)  =  x3
U252(x1, x2, x3)  =  U252(x1, x2, x3)
a__U245(x1, x2)  =  a__U245(x1)
U245(x1, x2)  =  U245(x1, x2)
a__U44(x1, x2, x3)  =  a__U44(x1, x2, x3)
a__U45(x1, x2)  =  a__U45(x2)
a__U246(x1)  =  a__U246
U246(x1)  =  U246
a__U46(x1)  =  x1
a__U243(x1, x2, x3)  =  a__U243(x2, x3)
U243(x1, x2, x3)  =  U243(x1, x2, x3)
a__U244(x1, x2, x3)  =  x1
U244(x1, x2, x3)  =  x1
U45(x1, x2)  =  U45(x1, x2)
U44(x1, x2, x3)  =  x1
U51(x1, x2, x3)  =  U51(x1, x2, x3)
U46(x1)  =  x1
U41(x1, x2, x3)  =  x2
U43(x1, x2, x3)  =  U43(x2, x3)
U42(x1, x2, x3)  =  U42(x1, x2, x3)
nil  =  nil
a__U161(x1)  =  x1
a__U151(x1)  =  x1
a__U141(x1)  =  a__U141
a__U131(x1)  =  a__U131
a__U121(x1, x2)  =  a__U121
a__U111(x1, x2)  =  x1
a__U101(x1, x2, x3)  =  a__U101(x2, x3)
a__U102(x1, x2, x3)  =  a__U102(x3)
U101(x1, x2, x3)  =  U101(x1, x2, x3)
U102(x1, x2, x3)  =  U102(x1, x2, x3)
isNaturalKind(x1)  =  isNaturalKind
a__U103(x1, x2, x3)  =  a__U103(x3)
U103(x1, x2, x3)  =  x1
isLNatKind(x1)  =  isLNatKind
a__U104(x1, x2, x3)  =  x3
U104(x1, x2, x3)  =  U104(x1, x2, x3)
a__U105(x1, x2)  =  a__U105(x1, x2)
U105(x1, x2)  =  U105(x1, x2)
isNatural(x1)  =  isNatural
U131(x1)  =  U131
a__U122(x1)  =  a__U122
U122(x1)  =  U122
U161(x1)  =  U161
U151(x1)  =  U151
U141(x1)  =  U141
isLNat(x1)  =  isLNat
a__U106(x1)  =  x1
U106(x1)  =  U106
U121(x1, x2)  =  U121(x1, x2)
a__U112(x1)  =  a__U112(x1)
U112(x1)  =  U112
U111(x1, x2)  =  U111(x1, x2)
a__U203(x1, x2, x3)  =  a__U203(x3)
U203(x1, x2, x3)  =  U203(x1, x2, x3)
a__U204(x1, x2, x3)  =  a__U204
U204(x1, x2, x3)  =  U204(x1, x2, x3)
U201(x1, x2, x3)  =  x3
a__U202(x1, x2, x3)  =  x2
U202(x1, x2, x3)  =  x1
a__U205(x1, x2)  =  x1
U205(x1, x2)  =  U205(x2)
a__U206(x1)  =  a__U206
U206(x1)  =  U206(x1)
U181(x1, x2)  =  U181(x2)
a__U182(x1, x2)  =  x2
U182(x1, x2)  =  U182(x1, x2)
U171(x1, x2)  =  U171(x1, x2)
a__U172(x1)  =  a__U172
U172(x1)  =  U172(x1)
a__U192(x1, x2)  =  a__U192
U192(x1, x2)  =  U192(x1, x2)
a__U193(x1)  =  a__U193
U193(x1)  =  U193(x1)
a__U183(x1)  =  x1
U183(x1)  =  U183(x1)
U191(x1, x2)  =  U191(x1, x2)

Recursive path order with status [RPO].
Precedence:
afterNth2 > AU412 > aisNaturalKind > aU211 > U211 > aisLNat
afterNth2 > AU412 > AU422 > AU432 > AU442 > aisLNat
cons2 > AU512 > aisNaturalKind > aU211 > U211 > aisLNat
cons2 > AU512 > AU522 > AU532 > AU542 > aisLNat
cons2 > aU121 > aU122 > aisLNat
cons2 > aU121 > U1212 > aisLNat
fst1 > AU611 > aisPLNatKind1 > isPLNatKind > aisLNat
fst1 > AU611 > AU621 > AISPLNAT1 > AU2412 > AU2422 > AU2432 > AU2442 > aisLNat
fst1 > AU611 > AU621 > AISPLNAT1 > AU2512 > aisNaturalKind > aU211 > U211 > aisLNat
fst1 > AU611 > AU621 > AISPLNAT1 > AU2512 > AU2522 > AU2532 > AU2542 > aisLNat
fst1 > aU131 > U131 > aisLNat
pair2 > AU2412 > AU2422 > AU2432 > AU2442 > aisLNat
natsFrom1 > AU711 > aisNaturalKind > aU211 > U211 > aisLNat
natsFrom1 > AU711 > AU721 > aisLNat
natsFrom1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
natsFrom1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
natsFrom1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
natsFrom1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
natsFrom1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
natsFrom1 > aU141 > tt > AU2442 > aisLNat
natsFrom1 > aU141 > tt > AU721 > aisLNat
natsFrom1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
natsFrom1 > aU141 > tt > AU2042 > aisLNat
natsFrom1 > aU141 > tt > aisPLNat1 > aisLNat
natsFrom1 > aU141 > tt > aU543 > aisLNat
natsFrom1 > aU141 > tt > aU522 > aisLNat
natsFrom1 > aU141 > tt > aU63 > aisLNat
natsFrom1 > aU141 > tt > aU83 > U83 > aisLNat
natsFrom1 > aU141 > tt > aU262 > aisLNat
natsFrom1 > aU141 > tt > aU422 > aisLNat
natsFrom1 > aU141 > tt > aU232 > U232 > aisLNat
natsFrom1 > aU141 > tt > aU2533 > U2533 > aisLNat
natsFrom1 > aU141 > tt > aU2541 > U2543 > aisLNat
natsFrom1 > aU141 > tt > aU451 > U452 > aisLNat
natsFrom1 > aU141 > tt > aU1021 > aisLNat
natsFrom1 > aU141 > tt > aU1052 > U1052 > aisLNat
natsFrom1 > aU141 > tt > aU122 > aisLNat
natsFrom1 > aU141 > tt > aU1121 > aisLNat
natsFrom1 > aU141 > tt > aU192 > U1922 > aisLNat
natsFrom1 > aU141 > tt > aU193 > U1931 > aisLNat
natsFrom1 > aU141 > U141 > aisLNat
head1 > aisLNatKind1 > aU1711 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
head1 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
head1 > aisLNatKind1 > aU141 > U141 > aisLNat
head1 > aisLNatKind1 > aU131 > U131 > aisLNat
head1 > aisLNatKind1 > aU121 > aU122 > aisLNat
head1 > aisLNatKind1 > aU121 > U1212 > aisLNat
head1 > AU1811 > aisLNat
snd1 > AU811 > aisPLNatKind1 > isPLNatKind > aisLNat
snd1 > AU811 > AU821 > AISPLNAT1 > AU2412 > AU2422 > AU2432 > AU2442 > aisLNat
snd1 > AU811 > AU821 > AISPLNAT1 > AU2512 > aisNaturalKind > aU211 > U211 > aisLNat
snd1 > AU811 > AU821 > AISPLNAT1 > AU2512 > AU2522 > AU2532 > AU2542 > aisLNat
snd1 > aU81 > aisPLNatKind1 > isPLNatKind > aisLNat
snd1 > aU81 > aU82 > aisPLNat1 > aisLNat
snd1 > aU81 > aU82 > U822 > aisLNat
snd1 > aU81 > aU82 > aU83 > U83 > aisLNat
snd1 > aU81 > U812 > aisLNat
splitAt2 > AU2512 > aisNaturalKind > aU211 > U211 > aisLNat
splitAt2 > AU2512 > AU2522 > AU2532 > AU2542 > aisLNat
splitAt2 > aU271 > U2712 > aisLNat
tail1 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU1711 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU141 > U141 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU131 > U131 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU121 > aU122 > aisLNat
take2 > AU1012 > AU1022 > aisLNatKind1 > aU121 > U1212 > aisLNat
take2 > aU1012 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU1711 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU141 > U141 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU131 > U131 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU121 > aU122 > aisLNat
sel2 > AU2012 > AU2022 > aisLNatKind1 > aU121 > U1212 > aisLNat
sel2 > AU2012 > AU2022 > AU2032 > AU2042 > aisLNat
sel2 > aU2011 > aisNaturalKind > aU211 > U211 > aisLNat
sel2 > aU231 > U2312 > aisLNat
sel2 > aU231 > aU232 > U232 > aisLNat
aU93 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU93 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU93 > tt > AU422 > AU432 > AU442 > aisLNat
aU93 > tt > AU522 > AU532 > AU542 > aisLNat
aU93 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU93 > tt > AU2442 > aisLNat
aU93 > tt > AU721 > aisLNat
aU93 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU93 > tt > AU2042 > aisLNat
aU93 > tt > aisPLNat1 > aisLNat
aU93 > tt > aU543 > aisLNat
aU93 > tt > aU522 > aisLNat
aU93 > tt > aU63 > aisLNat
aU93 > tt > aU83 > U83 > aisLNat
aU93 > tt > aU262 > aisLNat
aU93 > tt > aU422 > aisLNat
aU93 > tt > aU232 > U232 > aisLNat
aU93 > tt > aU2533 > U2533 > aisLNat
aU93 > tt > aU2541 > U2543 > aisLNat
aU93 > tt > aU451 > U452 > aisLNat
aU93 > tt > aU1021 > aisLNat
aU93 > tt > aU1052 > U1052 > aisLNat
aU93 > tt > aU122 > aisLNat
aU93 > tt > aU1121 > aisLNat
aU93 > tt > aU192 > U1922 > aisLNat
aU93 > tt > aU193 > U1931 > aisLNat
U93 > aisLNat
0 > aisLNat
U922 > aisLNat
U912 > aisLNat
aU191 > aU192 > U1922 > aisLNat
aU2411 > U2413 > aisLNat
U543 > aisLNat
U552 > aisLNat
U523 > aisLNat
aU531 > aisLNatKind1 > aU1711 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
aU531 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
aU531 > aisLNatKind1 > aU141 > U141 > aisLNat
aU531 > aisLNatKind1 > aU131 > U131 > aisLNat
aU531 > aisLNatKind1 > aU121 > aU122 > aisLNat
aU531 > aisLNatKind1 > aU121 > U1212 > aisLNat
aU531 > U533 > aisLNat
U56 > aisLNat
aU61 > aisPLNatKind1 > isPLNatKind > aisLNat
aU61 > aU62 > aisPLNat1 > aisLNat
aU61 > aU62 > U622 > aisLNat
aU61 > aU62 > aU63 > aisLNat
aU61 > U612 > aisLNat
U712 > aisLNat
U63 > aisLNat
isPLNat > aisLNat
U731 > aisLNat
U272 > aisLNat
U2612 > aisLNat
aU2561 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU2561 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU2561 > tt > AU422 > AU432 > AU442 > aisLNat
aU2561 > tt > AU522 > AU532 > AU542 > aisLNat
aU2561 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU2561 > tt > AU2442 > aisLNat
aU2561 > tt > AU721 > aisLNat
aU2561 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU2561 > tt > AU2042 > aisLNat
aU2561 > tt > aisPLNat1 > aisLNat
aU2561 > tt > aU543 > aisLNat
aU2561 > tt > aU522 > aisLNat
aU2561 > tt > aU63 > aisLNat
aU2561 > tt > aU83 > U83 > aisLNat
aU2561 > tt > aU262 > aisLNat
aU2561 > tt > aU422 > aisLNat
aU2561 > tt > aU232 > U232 > aisLNat
aU2561 > tt > aU2533 > U2533 > aisLNat
aU2561 > tt > aU2541 > U2543 > aisLNat
aU2561 > tt > aU451 > U452 > aisLNat
aU2561 > tt > aU1021 > aisLNat
aU2561 > tt > aU1052 > U1052 > aisLNat
aU2561 > tt > aU122 > aisLNat
aU2561 > tt > aU1121 > aisLNat
aU2561 > tt > aU192 > U1922 > aisLNat
aU2561 > tt > aU193 > U1931 > aisLNat
aU2561 > U256 > aisLNat
aU2551 > U2552 > aisLNat
aU2422 > U2423 > aisLNat
aU433 > aisLNatKind1 > aU1711 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
aU433 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
aU433 > aisLNatKind1 > aU141 > U141 > aisLNat
aU433 > aisLNatKind1 > aU131 > U131 > aisLNat
aU433 > aisLNatKind1 > aU121 > aU122 > aisLNat
aU433 > aisLNatKind1 > aU121 > U1212 > aisLNat
aU433 > aU443 > aU451 > U452 > aisLNat
aU433 > U432 > aisLNat
U221 > aisLNat
U2513 > aisLNat
U2523 > aisLNat
aU2451 > U2452 > aisLNat
aU246 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU246 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU246 > tt > AU422 > AU432 > AU442 > aisLNat
aU246 > tt > AU522 > AU532 > AU542 > aisLNat
aU246 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU246 > tt > AU2442 > aisLNat
aU246 > tt > AU721 > aisLNat
aU246 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU246 > tt > AU2042 > aisLNat
aU246 > tt > aisPLNat1 > aisLNat
aU246 > tt > aU543 > aisLNat
aU246 > tt > aU522 > aisLNat
aU246 > tt > aU63 > aisLNat
aU246 > tt > aU83 > U83 > aisLNat
aU246 > tt > aU262 > aisLNat
aU246 > tt > aU422 > aisLNat
aU246 > tt > aU232 > U232 > aisLNat
aU246 > tt > aU2533 > U2533 > aisLNat
aU246 > tt > aU2541 > U2543 > aisLNat
aU246 > tt > aU451 > U452 > aisLNat
aU246 > tt > aU1021 > aisLNat
aU246 > tt > aU1052 > U1052 > aisLNat
aU246 > tt > aU122 > aisLNat
aU246 > tt > aU1121 > aisLNat
aU246 > tt > aU192 > U1922 > aisLNat
aU246 > tt > aU193 > U1931 > aisLNat
aU246 > U246 > aisLNat
aU2432 > U2433 > aisLNat
U513 > aisLNat
U423 > aisLNat
nil > aisLNat
U1013 > aisLNat
U1023 > aisLNat
isNaturalKind > aisLNat
aU1031 > aisLNatKind1 > aU1711 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
aU1031 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
aU1031 > aisLNatKind1 > aU141 > U141 > aisLNat
aU1031 > aisLNatKind1 > aU131 > U131 > aisLNat
aU1031 > aisLNatKind1 > aU121 > aU122 > aisLNat
aU1031 > aisLNatKind1 > aU121 > U1212 > aisLNat
isLNatKind > aisLNat
U1043 > aisLNat
isNatural > aisLNat
U122 > aisLNat
U161 > aisLNat
U151 > aisLNat
isLNat > aisLNat
U106 > aisLNat
U112 > aisLNat
U1112 > aisLNat
aU2031 > aisLNatKind1 > aU1711 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU422 > AU432 > AU442 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU522 > AU532 > AU542 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU2442 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU721 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > AU2042 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aisPLNat1 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU543 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU522 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU63 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU83 > U83 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU262 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU422 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU232 > U232 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU2533 > U2533 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU2541 > U2543 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU451 > U452 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU1021 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU1052 > U1052 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU122 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU1121 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU192 > U1922 > aisLNat
aU2031 > aisLNatKind1 > aU141 > tt > aU193 > U1931 > aisLNat
aU2031 > aisLNatKind1 > aU141 > U141 > aisLNat
aU2031 > aisLNatKind1 > aU131 > U131 > aisLNat
aU2031 > aisLNatKind1 > aU121 > aU122 > aisLNat
aU2031 > aisLNatKind1 > aU121 > U1212 > aisLNat
aU2031 > U2033 > aisLNat
aU204 > U2043 > aisLNat
U2051 > aisLNat
aU206 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU206 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU206 > tt > AU422 > AU432 > AU442 > aisLNat
aU206 > tt > AU522 > AU532 > AU542 > aisLNat
aU206 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU206 > tt > AU2442 > aisLNat
aU206 > tt > AU721 > aisLNat
aU206 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU206 > tt > AU2042 > aisLNat
aU206 > tt > aisPLNat1 > aisLNat
aU206 > tt > aU543 > aisLNat
aU206 > tt > aU522 > aisLNat
aU206 > tt > aU63 > aisLNat
aU206 > tt > aU83 > U83 > aisLNat
aU206 > tt > aU262 > aisLNat
aU206 > tt > aU422 > aisLNat
aU206 > tt > aU232 > U232 > aisLNat
aU206 > tt > aU2533 > U2533 > aisLNat
aU206 > tt > aU2541 > U2543 > aisLNat
aU206 > tt > aU451 > U452 > aisLNat
aU206 > tt > aU1021 > aisLNat
aU206 > tt > aU1052 > U1052 > aisLNat
aU206 > tt > aU122 > aisLNat
aU206 > tt > aU1121 > aisLNat
aU206 > tt > aU192 > U1922 > aisLNat
aU206 > tt > aU193 > U1931 > aisLNat
aU206 > U2061 > aisLNat
U1811 > aisLNat
U1822 > aisLNat
U1712 > aisLNat
aU172 > tt > AU1032 > AU1042 > AU1051 > aisLNat
aU172 > tt > aisNaturalKind > aU211 > U211 > aisLNat
aU172 > tt > AU422 > AU432 > AU442 > aisLNat
aU172 > tt > AU522 > AU532 > AU542 > aisLNat
aU172 > tt > aisPLNatKind1 > isPLNatKind > aisLNat
aU172 > tt > AU2442 > aisLNat
aU172 > tt > AU721 > aisLNat
aU172 > tt > AU2522 > AU2532 > AU2542 > aisLNat
aU172 > tt > AU2042 > aisLNat
aU172 > tt > aisPLNat1 > aisLNat
aU172 > tt > aU543 > aisLNat
aU172 > tt > aU522 > aisLNat
aU172 > tt > aU63 > aisLNat
aU172 > tt > aU83 > U83 > aisLNat
aU172 > tt > aU262 > aisLNat
aU172 > tt > aU422 > aisLNat
aU172 > tt > aU232 > U232 > aisLNat
aU172 > tt > aU2533 > U2533 > aisLNat
aU172 > tt > aU2541 > U2543 > aisLNat
aU172 > tt > aU451 > U452 > aisLNat
aU172 > tt > aU1021 > aisLNat
aU172 > tt > aU1052 > U1052 > aisLNat
aU172 > tt > aU122 > aisLNat
aU172 > tt > aU1121 > aisLNat
aU172 > tt > aU192 > U1922 > aisLNat
aU172 > tt > aU193 > U1931 > aisLNat
aU172 > U1721 > aisLNat
U1831 > aisLNat
U1912 > aisLNat

Status:
aU61: multiset
AU2512: multiset
aU191: multiset
aU63: multiset
take2: multiset
U83: multiset
aU1052: multiset
U712: multiset
aU232: multiset
U1013: multiset
AU1811: multiset
AU2532: multiset
U2061: multiset
tt: multiset
AU2042: multiset
U2523: multiset
aU211: multiset
isPLNatKind: multiset
U543: multiset
nil: multiset
U122: multiset
U552: multiset
isPLNat: multiset
U2433: multiset
afterNth2: multiset
U2423: multiset
AU442: multiset
U1721: multiset
aU82: multiset
aU231: multiset
U1922: multiset
aisLNatKind1: [1]
U272: multiset
aisPLNat1: multiset
aU2011: multiset
aU522: multiset
U812: multiset
aU122: multiset
AU1022: multiset
aU2541: multiset
aU172: multiset
U912: multiset
AU2022: multiset
aU1711: multiset
U112: multiset
U211: multiset
AU412: multiset
AU1032: multiset
splitAt2: multiset
isLNatKind: multiset
AU711: multiset
U1043: multiset
U2543: multiset
aU192: multiset
AISPLNAT1: multiset
AU522: multiset
U161: multiset
aU1121: multiset
U63: multiset
U513: multiset
natsFrom1: multiset
aU81: multiset
aU433: multiset
aU2551: multiset
U2033: multiset
U922: multiset
U232: multiset
AU2522: multiset
U131: multiset
U1931: multiset
U822: multiset
U612: multiset
aU93: multiset
U432: multiset
aU1012: multiset
U1712: multiset
U1822: multiset
sel2: multiset
U622: multiset
aU1031: multiset
isNaturalKind: multiset
U141: multiset
aU206: multiset
aU2533: multiset
aU451: multiset
aU62: multiset
AU1051: multiset
U2051: multiset
U1912: multiset
AU2432: multiset
aU246: multiset
AU422: multiset
AU2422: multiset
pair2: multiset
AU2442: multiset
U1052: multiset
AU721: multiset
U1811: multiset
U2533: multiset
aU2031: multiset
AU2012: multiset
U2043: multiset
U2513: multiset
U2413: multiset
U1023: multiset
AU532: multiset
aU2432: multiset
U533: multiset
U1831: multiset
aU204: multiset
aU2422: multiset
U151: multiset
AU811: multiset
AU542: multiset
aU2451: multiset
AU432: multiset
AU1042: multiset
U1212: multiset
AU2542: multiset
U56: multiset
aU2411: multiset
aU531: multiset
isNatural: multiset
aU422: multiset
U2612: multiset
U2312: multiset
U246: multiset
aU262: multiset
aU131: multiset
U2452: multiset
U423: multiset
aU271: multiset
AU2032: multiset
AU821: multiset
U452: multiset
AU1012: multiset
aU2561: multiset
AU2412: multiset
U256: multiset
tail1: multiset
U2552: multiset
U106: multiset
snd1: multiset
aU443: multiset
head1: multiset
U93: multiset
U2712: multiset
isLNat: multiset
aisPLNatKind1: multiset
0: multiset
U1112: multiset
AU621: multiset
U523: multiset
aU1021: multiset
cons2: multiset
aU121: multiset
aU141: multiset
AU512: multiset
aU543: multiset
U731: multiset
aU193: multiset
aisLNat: multiset
fst1: multiset
aisNaturalKind: []
U221: multiset
AU611: multiset
aU83: multiset

The following usable rules [FROCOS05] were oriented: none

(22) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__U45(tt, V2) → A__ISLNAT(V2)
A__U55(tt, V2) → A__ISLNAT(V2)
A__U245(tt, V2) → A__ISLNAT(V2)
A__U182(tt, V1) → A__ISLNAT(V1)
A__U255(tt, V2) → A__ISLNAT(V2)
A__U91(tt, V1) → A__U92(a__isLNatKind(V1), V1)
A__U92(tt, V1) → A__ISLNAT(V1)
A__ISNATURAL(s(V1)) → A__U191(a__isNaturalKind(V1), V1)
A__U191(tt, V1) → A__U192(a__isNaturalKind(V1), V1)
A__U192(tt, V1) → A__ISNATURAL(V1)
A__U205(tt, V2) → A__ISLNAT(V2)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(23) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 8 less nodes.

(24) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__U191(tt, V1) → A__U192(a__isNaturalKind(V1), V1)
A__U192(tt, V1) → A__ISNATURAL(V1)
A__ISNATURAL(s(V1)) → A__U191(a__isNaturalKind(V1), V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(25) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


A__ISNATURAL(s(V1)) → A__U191(a__isNaturalKind(V1), V1)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
A__U191(x1, x2)  =  x2
tt  =  tt
A__U192(x1, x2)  =  x2
a__isNaturalKind(x1)  =  a__isNaturalKind
A__ISNATURAL(x1)  =  x1
s(x1)  =  s(x1)
a__isLNatKind(x1)  =  a__isLNatKind
take(x1, x2)  =  x2
a__U171(x1, x2)  =  a__U171(x1, x2)
0  =  0
head(x1)  =  head
a__U211(x1)  =  a__U211
a__U221(x1)  =  a__U221(x1)
sel(x1, x2)  =  sel(x2)
a__U231(x1, x2)  =  x1
a__isPLNatKind(x1)  =  x1
pair(x1, x2)  =  pair(x1)
a__U261(x1, x2)  =  x1
splitAt(x1, x2)  =  splitAt(x2)
a__U271(x1, x2)  =  x1
isNaturalKind(x1)  =  isNaturalKind
isLNatKind(x1)  =  isLNatKind(x1)
isPLNatKind(x1)  =  isPLNatKind(x1)
a__U131(x1)  =  a__U131
U131(x1)  =  U131(x1)
a__U122(x1)  =  a__U122(x1)
U122(x1)  =  U122(x1)
a__U161(x1)  =  a__U161(x1)
U161(x1)  =  U161(x1)
a__U151(x1)  =  a__U151
U151(x1)  =  U151(x1)
a__U141(x1)  =  a__U141(x1)
U141(x1)  =  U141(x1)
a__U121(x1, x2)  =  a__U121(x1, x2)
U121(x1, x2)  =  U121(x1, x2)
a__U112(x1)  =  a__U112(x1)
U112(x1)  =  U112(x1)
a__U111(x1, x2)  =  a__U111
U111(x1, x2)  =  U111(x1, x2)
U171(x1, x2)  =  U171(x1, x2)
a__U172(x1)  =  a__U172(x1)
U172(x1)  =  U172(x1)
a__U272(x1)  =  a__U272
U272(x1)  =  U272(x1)
U271(x1, x2)  =  U271(x1, x2)
a__U262(x1)  =  a__U262(x1)
U262(x1)  =  U262(x1)
U261(x1, x2)  =  U261(x1, x2)
U231(x1, x2)  =  U231(x1, x2)
a__U232(x1)  =  a__U232(x1)
U232(x1)  =  U232(x1)
U221(x1)  =  U221(x1)
U211(x1)  =  U211(x1)
tail(x1)  =  x1
snd(x1)  =  snd
natsFrom(x1)  =  x1
fst(x1)  =  fst
cons(x1, x2)  =  x2
afterNth(x1, x2)  =  afterNth
nil  =  nil

Recursive path order with status [RPO].
Precedence:
s1 > aU2211 > U1712
aisLNatKind > aisNaturalKind > tt > aU1121 > U1712
aisLNatKind > aisNaturalKind > tt > aU1721 > U1721 > U1712
aisLNatKind > aisNaturalKind > tt > aU272 > U1712
aisLNatKind > aisNaturalKind > tt > aU2621 > U1712
aisLNatKind > aisNaturalKind > tt > aU2321 > U1712
aisLNatKind > aisNaturalKind > aU211 > U2111 > U1712
aisLNatKind > aisNaturalKind > aU2211 > U1712
aisLNatKind > aisNaturalKind > isNaturalKind > U1712
aisLNatKind > aU1712 > aU1721 > U1721 > U1712
aisLNatKind > isLNatKind1 > U1712
aisLNatKind > aU1611 > tt > aU1121 > U1712
aisLNatKind > aU1611 > tt > aU1721 > U1721 > U1712
aisLNatKind > aU1611 > tt > aU272 > U1712
aisLNatKind > aU1611 > tt > aU2621 > U1712
aisLNatKind > aU1611 > tt > aU2321 > U1712
aisLNatKind > aU1212 > U1712
aisLNatKind > aU111 > aU1121 > U1712
aisLNatKind > aU111 > U1112 > U1712
0 > U1712
head > U1712
sel1 > U1712
pair1 > U1712
splitAt1 > U1712
isPLNatKind1 > U1712
aU131 > tt > aU1121 > U1712
aU131 > tt > aU1721 > U1721 > U1712
aU131 > tt > aU272 > U1712
aU131 > tt > aU2621 > U1712
aU131 > tt > aU2321 > U1712
U1311 > U1712
aU1221 > tt > aU1121 > U1712
aU1221 > tt > aU1721 > U1721 > U1712
aU1221 > tt > aU272 > U1712
aU1221 > tt > aU2621 > U1712
aU1221 > tt > aU2321 > U1712
U1221 > U1712
U1611 > U1712
aU151 > tt > aU1121 > U1712
aU151 > tt > aU1721 > U1721 > U1712
aU151 > tt > aU272 > U1712
aU151 > tt > aU2621 > U1712
aU151 > tt > aU2321 > U1712
aU151 > U1511 > U1712
aU1411 > tt > aU1121 > U1712
aU1411 > tt > aU1721 > U1721 > U1712
aU1411 > tt > aU272 > U1712
aU1411 > tt > aU2621 > U1712
aU1411 > tt > aU2321 > U1712
U1411 > U1712
U1212 > U1712
U1121 > U1712
U2721 > U1712
U2712 > U1712
U2621 > U1712
U2612 > U1712
U2312 > U1712
U2321 > U1712
U2211 > U1712
snd > U1712
fst > U1712
afterNth > U1712
nil > tt > aU1121 > U1712
nil > tt > aU1721 > U1721 > U1712
nil > tt > aU272 > U1712
nil > tt > aU2621 > U1712
nil > tt > aU2321 > U1712

Status:
aU1611: multiset
isNaturalKind: multiset
U1511: multiset
isPLNatKind1: multiset
afterNth: multiset
pair1: multiset
aU1721: multiset
tt: multiset
U1411: multiset
aU2211: multiset
aisLNatKind: multiset
aU211: multiset
U2721: multiset
nil: multiset
U2621: multiset
U1721: multiset
fst: multiset
snd: multiset
sel1: multiset
U1212: multiset
aU2321: multiset
U1311: multiset
U2312: multiset
U2612: multiset
aU272: multiset
U1221: multiset
aU111: multiset
U2211: multiset
aU131: multiset
isLNatKind1: multiset
aU1212: multiset
head: multiset
U2321: multiset
s1: multiset
aU1121: multiset
aU151: multiset
U2712: multiset
U1611: multiset
aU1221: multiset
U1112: multiset
aU1411: multiset
0: multiset
U1121: multiset
aU1712: multiset
U2111: multiset
aisNaturalKind: []
U1712: multiset
splitAt1: multiset
aU2621: multiset

The following usable rules [FROCOS05] were oriented: none

(26) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A__U191(tt, V1) → A__U192(a__isNaturalKind(V1), V1)
A__U192(tt, V1) → A__ISNATURAL(V1)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(27) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 2 less nodes.

(28) TRUE

(29) Obligation:

Q DP problem:
The TRS P consists of the following rules:

MARK(U101(X1, X2, X3)) → MARK(X1)
MARK(U102(X1, X2, X3)) → MARK(X1)
MARK(U103(X1, X2, X3)) → MARK(X1)
MARK(U104(X1, X2, X3)) → MARK(X1)
MARK(U105(X1, X2)) → MARK(X1)
MARK(U106(X)) → MARK(X)
MARK(U11(X1, X2, X3)) → A__U11(mark(X1), X2, X3)
A__U11(tt, N, XS) → A__U12(a__isNaturalKind(N), N, XS)
A__U12(tt, N, XS) → A__U13(a__isLNat(XS), N, XS)
A__U13(tt, N, XS) → A__U14(a__isLNatKind(XS), N, XS)
A__U14(tt, N, XS) → A__SND(a__splitAt(mark(N), mark(XS)))
A__SND(pair(X, Y)) → A__U301(a__isLNat(X), X, Y)
A__U301(tt, X, Y) → A__U302(a__isLNatKind(X), Y)
A__U302(tt, Y) → A__U303(a__isLNat(Y), Y)
A__U303(tt, Y) → A__U304(a__isLNatKind(Y), Y)
A__U304(tt, Y) → MARK(Y)
MARK(U11(X1, X2, X3)) → MARK(X1)
MARK(U12(X1, X2, X3)) → A__U12(mark(X1), X2, X3)
MARK(U12(X1, X2, X3)) → MARK(X1)
MARK(U111(X1, X2)) → MARK(X1)
MARK(U112(X)) → MARK(X)
MARK(U13(X1, X2, X3)) → A__U13(mark(X1), X2, X3)
MARK(U13(X1, X2, X3)) → MARK(X1)
MARK(U121(X1, X2)) → MARK(X1)
MARK(U122(X)) → MARK(X)
MARK(U14(X1, X2, X3)) → A__U14(mark(X1), X2, X3)
A__U14(tt, N, XS) → A__SPLITAT(mark(N), mark(XS))
A__SPLITAT(0, XS) → A__U311(a__isLNat(XS), XS)
A__U311(tt, XS) → A__U312(a__isLNatKind(XS), XS)
A__U312(tt, XS) → MARK(XS)
MARK(U14(X1, X2, X3)) → MARK(X1)
MARK(U131(X)) → MARK(X)
MARK(snd(X)) → A__SND(mark(X))
MARK(snd(X)) → MARK(X)
MARK(splitAt(X1, X2)) → A__SPLITAT(mark(X1), mark(X2))
A__SPLITAT(s(N), cons(X, XS)) → A__U321(a__isNatural(N), N, X, XS)
A__U321(tt, N, X, XS) → A__U322(a__isNaturalKind(N), N, X, XS)
A__U322(tt, N, X, XS) → A__U323(a__isNatural(X), N, X, XS)
A__U323(tt, N, X, XS) → A__U324(a__isNaturalKind(X), N, X, XS)
A__U324(tt, N, X, XS) → A__U325(a__isLNat(XS), N, X, XS)
A__U325(tt, N, X, XS) → A__U326(a__isLNatKind(XS), N, X, XS)
A__U326(tt, N, X, XS) → A__U327(a__splitAt(mark(N), mark(XS)), X)
A__U327(pair(YS, ZS), X) → MARK(X)
MARK(splitAt(X1, X2)) → MARK(X1)
MARK(splitAt(X1, X2)) → MARK(X2)
MARK(U141(X)) → MARK(X)
MARK(U151(X)) → MARK(X)
MARK(U161(X)) → MARK(X)
MARK(U171(X1, X2)) → MARK(X1)
MARK(U172(X)) → MARK(X)
MARK(U181(X1, X2)) → MARK(X1)
MARK(U182(X1, X2)) → MARK(X1)
MARK(U183(X)) → MARK(X)
MARK(U191(X1, X2)) → MARK(X1)
MARK(U192(X1, X2)) → MARK(X1)
MARK(U193(X)) → MARK(X)
MARK(U201(X1, X2, X3)) → MARK(X1)
MARK(U202(X1, X2, X3)) → MARK(X1)
MARK(U203(X1, X2, X3)) → MARK(X1)
MARK(U204(X1, X2, X3)) → MARK(X1)
MARK(U205(X1, X2)) → MARK(X1)
MARK(U206(X)) → MARK(X)
MARK(U21(X1, X2, X3)) → A__U21(mark(X1), X2, X3)
A__U21(tt, X, Y) → A__U22(a__isLNatKind(X), X, Y)
A__U22(tt, X, Y) → A__U23(a__isLNat(Y), X, Y)
A__U23(tt, X, Y) → A__U24(a__isLNatKind(Y), X)
A__U24(tt, X) → MARK(X)
MARK(U21(X1, X2, X3)) → MARK(X1)
MARK(U22(X1, X2, X3)) → A__U22(mark(X1), X2, X3)
MARK(U22(X1, X2, X3)) → MARK(X1)
MARK(U211(X)) → MARK(X)
MARK(U23(X1, X2, X3)) → A__U23(mark(X1), X2, X3)
MARK(U23(X1, X2, X3)) → MARK(X1)
MARK(U221(X)) → MARK(X)
MARK(U24(X1, X2)) → A__U24(mark(X1), X2)
MARK(U24(X1, X2)) → MARK(X1)
MARK(U231(X1, X2)) → MARK(X1)
MARK(U232(X)) → MARK(X)
MARK(U241(X1, X2, X3)) → MARK(X1)
MARK(U242(X1, X2, X3)) → MARK(X1)
MARK(U243(X1, X2, X3)) → MARK(X1)
MARK(U244(X1, X2, X3)) → MARK(X1)
MARK(U245(X1, X2)) → MARK(X1)
MARK(U246(X)) → MARK(X)
MARK(U251(X1, X2, X3)) → MARK(X1)
MARK(U252(X1, X2, X3)) → MARK(X1)
MARK(U253(X1, X2, X3)) → MARK(X1)
MARK(U254(X1, X2, X3)) → MARK(X1)
MARK(U255(X1, X2)) → MARK(X1)
MARK(U256(X)) → MARK(X)
MARK(U261(X1, X2)) → MARK(X1)
MARK(U262(X)) → MARK(X)
MARK(U271(X1, X2)) → MARK(X1)
MARK(U272(X)) → MARK(X)
MARK(U281(X1, X2)) → A__U281(mark(X1), X2)
A__U281(tt, N) → A__U282(a__isNaturalKind(N), N)
A__U282(tt, N) → MARK(N)
MARK(U281(X1, X2)) → MARK(X1)
MARK(U282(X1, X2)) → A__U282(mark(X1), X2)
MARK(U282(X1, X2)) → MARK(X1)
MARK(natsFrom(X)) → A__NATSFROM(mark(X))
A__NATSFROM(N) → A__U281(a__isNatural(N), N)
MARK(natsFrom(X)) → MARK(X)
MARK(U291(X1, X2, X3)) → A__U291(mark(X1), X2, X3)
A__U291(tt, N, XS) → A__U292(a__isNaturalKind(N), N, XS)
A__U292(tt, N, XS) → A__U293(a__isLNat(XS), N, XS)
A__U293(tt, N, XS) → A__U294(a__isLNatKind(XS), N, XS)
A__U294(tt, N, XS) → A__HEAD(a__afterNth(mark(N), mark(XS)))
A__HEAD(cons(N, XS)) → A__U31(a__isNatural(N), N, XS)
A__U31(tt, N, XS) → A__U32(a__isNaturalKind(N), N, XS)
A__U32(tt, N, XS) → A__U33(a__isLNat(XS), N, XS)
A__U33(tt, N, XS) → A__U34(a__isLNatKind(XS), N)
A__U34(tt, N) → MARK(N)
MARK(U291(X1, X2, X3)) → MARK(X1)
MARK(U292(X1, X2, X3)) → A__U292(mark(X1), X2, X3)
MARK(U292(X1, X2, X3)) → MARK(X1)
MARK(U293(X1, X2, X3)) → A__U293(mark(X1), X2, X3)
MARK(U293(X1, X2, X3)) → MARK(X1)
MARK(U294(X1, X2, X3)) → A__U294(mark(X1), X2, X3)
A__U294(tt, N, XS) → A__AFTERNTH(mark(N), mark(XS))
A__AFTERNTH(N, XS) → A__U11(a__isNatural(N), N, XS)
A__U294(tt, N, XS) → MARK(N)
MARK(U294(X1, X2, X3)) → MARK(X1)
MARK(head(X)) → A__HEAD(mark(X))
MARK(head(X)) → MARK(X)
MARK(afterNth(X1, X2)) → A__AFTERNTH(mark(X1), mark(X2))
MARK(afterNth(X1, X2)) → MARK(X1)
MARK(afterNth(X1, X2)) → MARK(X2)
MARK(U301(X1, X2, X3)) → A__U301(mark(X1), X2, X3)
MARK(U301(X1, X2, X3)) → MARK(X1)
MARK(U302(X1, X2)) → A__U302(mark(X1), X2)
MARK(U302(X1, X2)) → MARK(X1)
MARK(U303(X1, X2)) → A__U303(mark(X1), X2)
MARK(U303(X1, X2)) → MARK(X1)
MARK(U304(X1, X2)) → A__U304(mark(X1), X2)
MARK(U304(X1, X2)) → MARK(X1)
MARK(U31(X1, X2, X3)) → A__U31(mark(X1), X2, X3)
MARK(U31(X1, X2, X3)) → MARK(X1)
MARK(U32(X1, X2, X3)) → A__U32(mark(X1), X2, X3)
MARK(U32(X1, X2, X3)) → MARK(X1)
MARK(U311(X1, X2)) → A__U311(mark(X1), X2)
MARK(U311(X1, X2)) → MARK(X1)
MARK(U312(X1, X2)) → A__U312(mark(X1), X2)
MARK(U312(X1, X2)) → MARK(X1)
MARK(U33(X1, X2, X3)) → A__U33(mark(X1), X2, X3)
MARK(U33(X1, X2, X3)) → MARK(X1)
MARK(U321(X1, X2, X3, X4)) → A__U321(mark(X1), X2, X3, X4)
MARK(U321(X1, X2, X3, X4)) → MARK(X1)
MARK(U322(X1, X2, X3, X4)) → A__U322(mark(X1), X2, X3, X4)
MARK(U322(X1, X2, X3, X4)) → MARK(X1)
MARK(U323(X1, X2, X3, X4)) → A__U323(mark(X1), X2, X3, X4)
MARK(U323(X1, X2, X3, X4)) → MARK(X1)
MARK(U324(X1, X2, X3, X4)) → A__U324(mark(X1), X2, X3, X4)
MARK(U324(X1, X2, X3, X4)) → MARK(X1)
MARK(U325(X1, X2, X3, X4)) → A__U325(mark(X1), X2, X3, X4)
MARK(U325(X1, X2, X3, X4)) → MARK(X1)
MARK(U326(X1, X2, X3, X4)) → A__U326(mark(X1), X2, X3, X4)
A__U326(tt, N, X, XS) → A__SPLITAT(mark(N), mark(XS))
A__U326(tt, N, X, XS) → MARK(N)
MARK(U326(X1, X2, X3, X4)) → MARK(X1)
MARK(U327(X1, X2)) → A__U327(mark(X1), X2)
A__U327(pair(YS, ZS), X) → MARK(ZS)
MARK(U327(X1, X2)) → MARK(X1)
MARK(U34(X1, X2)) → A__U34(mark(X1), X2)
MARK(U34(X1, X2)) → MARK(X1)
MARK(U331(X1, X2, X3)) → A__U331(mark(X1), X2, X3)
A__U331(tt, N, XS) → A__U332(a__isNaturalKind(N), XS)
A__U332(tt, XS) → A__U333(a__isLNat(XS), XS)
A__U333(tt, XS) → A__U334(a__isLNatKind(XS), XS)
A__U334(tt, XS) → MARK(XS)
MARK(U331(X1, X2, X3)) → MARK(X1)
MARK(U332(X1, X2)) → A__U332(mark(X1), X2)
MARK(U332(X1, X2)) → MARK(X1)
MARK(U333(X1, X2)) → A__U333(mark(X1), X2)
MARK(U333(X1, X2)) → MARK(X1)
MARK(U334(X1, X2)) → A__U334(mark(X1), X2)
MARK(U334(X1, X2)) → MARK(X1)
MARK(U341(X1, X2, X3)) → A__U341(mark(X1), X2, X3)
A__U341(tt, N, XS) → A__U342(a__isNaturalKind(N), N, XS)
A__U342(tt, N, XS) → A__U343(a__isLNat(XS), N, XS)
A__U343(tt, N, XS) → A__U344(a__isLNatKind(XS), N, XS)
A__U344(tt, N, XS) → A__FST(a__splitAt(mark(N), mark(XS)))
A__FST(pair(X, Y)) → A__U21(a__isLNat(X), X, Y)
A__U344(tt, N, XS) → A__SPLITAT(mark(N), mark(XS))
A__U344(tt, N, XS) → MARK(N)
MARK(U341(X1, X2, X3)) → MARK(X1)
MARK(U342(X1, X2, X3)) → A__U342(mark(X1), X2, X3)
MARK(U342(X1, X2, X3)) → MARK(X1)
MARK(U343(X1, X2, X3)) → A__U343(mark(X1), X2, X3)
MARK(U343(X1, X2, X3)) → MARK(X1)
MARK(U344(X1, X2, X3)) → A__U344(mark(X1), X2, X3)
A__U344(tt, N, XS) → MARK(XS)
MARK(U344(X1, X2, X3)) → MARK(X1)
MARK(fst(X)) → A__FST(mark(X))
MARK(fst(X)) → MARK(X)
MARK(U41(X1, X2, X3)) → MARK(X1)
MARK(U42(X1, X2, X3)) → MARK(X1)
MARK(U43(X1, X2, X3)) → MARK(X1)
MARK(U44(X1, X2, X3)) → MARK(X1)
MARK(U45(X1, X2)) → MARK(X1)
MARK(U46(X)) → MARK(X)
MARK(U51(X1, X2, X3)) → MARK(X1)
MARK(U52(X1, X2, X3)) → MARK(X1)
MARK(U53(X1, X2, X3)) → MARK(X1)
MARK(U54(X1, X2, X3)) → MARK(X1)
MARK(U55(X1, X2)) → MARK(X1)
MARK(U56(X)) → MARK(X)
MARK(U61(X1, X2)) → MARK(X1)
MARK(U62(X1, X2)) → MARK(X1)
MARK(U63(X)) → MARK(X)
MARK(U71(X1, X2)) → MARK(X1)
MARK(U72(X1, X2)) → MARK(X1)
MARK(U73(X)) → MARK(X)
MARK(U81(X1, X2)) → MARK(X1)
MARK(U82(X1, X2)) → MARK(X1)
MARK(U83(X)) → MARK(X)
MARK(U91(X1, X2)) → MARK(X1)
MARK(U92(X1, X2)) → MARK(X1)
MARK(U93(X)) → MARK(X)
MARK(tail(X)) → A__TAIL(mark(X))
A__TAIL(cons(N, XS)) → A__U331(a__isNatural(N), N, XS)
MARK(tail(X)) → MARK(X)
MARK(take(X1, X2)) → A__TAKE(mark(X1), mark(X2))
A__TAKE(N, XS) → A__U341(a__isNatural(N), N, XS)
MARK(take(X1, X2)) → MARK(X1)
MARK(take(X1, X2)) → MARK(X2)
MARK(sel(X1, X2)) → A__SEL(mark(X1), mark(X2))
A__SEL(N, XS) → A__U291(a__isNatural(N), N, XS)
MARK(sel(X1, X2)) → MARK(X1)
MARK(sel(X1, X2)) → MARK(X2)
MARK(cons(X1, X2)) → MARK(X1)
MARK(s(X)) → MARK(X)
MARK(pair(X1, X2)) → MARK(X1)
MARK(pair(X1, X2)) → MARK(X2)
A__U326(tt, N, X, XS) → MARK(XS)
A__U294(tt, N, XS) → MARK(XS)
A__U14(tt, N, XS) → MARK(N)
A__U14(tt, N, XS) → MARK(XS)

The TRS R consists of the following rules:

a__U101(tt, V1, V2) → a__U102(a__isNaturalKind(V1), V1, V2)
a__U102(tt, V1, V2) → a__U103(a__isLNatKind(V2), V1, V2)
a__U103(tt, V1, V2) → a__U104(a__isLNatKind(V2), V1, V2)
a__U104(tt, V1, V2) → a__U105(a__isNatural(V1), V2)
a__U105(tt, V2) → a__U106(a__isLNat(V2))
a__U106(tt) → tt
a__U11(tt, N, XS) → a__U12(a__isNaturalKind(N), N, XS)
a__U111(tt, V2) → a__U112(a__isLNatKind(V2))
a__U112(tt) → tt
a__U12(tt, N, XS) → a__U13(a__isLNat(XS), N, XS)
a__U121(tt, V2) → a__U122(a__isLNatKind(V2))
a__U122(tt) → tt
a__U13(tt, N, XS) → a__U14(a__isLNatKind(XS), N, XS)
a__U131(tt) → tt
a__U14(tt, N, XS) → a__snd(a__splitAt(mark(N), mark(XS)))
a__U141(tt) → tt
a__U151(tt) → tt
a__U161(tt) → tt
a__U171(tt, V2) → a__U172(a__isLNatKind(V2))
a__U172(tt) → tt
a__U181(tt, V1) → a__U182(a__isLNatKind(V1), V1)
a__U182(tt, V1) → a__U183(a__isLNat(V1))
a__U183(tt) → tt
a__U191(tt, V1) → a__U192(a__isNaturalKind(V1), V1)
a__U192(tt, V1) → a__U193(a__isNatural(V1))
a__U193(tt) → tt
a__U201(tt, V1, V2) → a__U202(a__isNaturalKind(V1), V1, V2)
a__U202(tt, V1, V2) → a__U203(a__isLNatKind(V2), V1, V2)
a__U203(tt, V1, V2) → a__U204(a__isLNatKind(V2), V1, V2)
a__U204(tt, V1, V2) → a__U205(a__isNatural(V1), V2)
a__U205(tt, V2) → a__U206(a__isLNat(V2))
a__U206(tt) → tt
a__U21(tt, X, Y) → a__U22(a__isLNatKind(X), X, Y)
a__U211(tt) → tt
a__U22(tt, X, Y) → a__U23(a__isLNat(Y), X, Y)
a__U221(tt) → tt
a__U23(tt, X, Y) → a__U24(a__isLNatKind(Y), X)
a__U231(tt, V2) → a__U232(a__isLNatKind(V2))
a__U232(tt) → tt
a__U24(tt, X) → mark(X)
a__U241(tt, V1, V2) → a__U242(a__isLNatKind(V1), V1, V2)
a__U242(tt, V1, V2) → a__U243(a__isLNatKind(V2), V1, V2)
a__U243(tt, V1, V2) → a__U244(a__isLNatKind(V2), V1, V2)
a__U244(tt, V1, V2) → a__U245(a__isLNat(V1), V2)
a__U245(tt, V2) → a__U246(a__isLNat(V2))
a__U246(tt) → tt
a__U251(tt, V1, V2) → a__U252(a__isNaturalKind(V1), V1, V2)
a__U252(tt, V1, V2) → a__U253(a__isLNatKind(V2), V1, V2)
a__U253(tt, V1, V2) → a__U254(a__isLNatKind(V2), V1, V2)
a__U254(tt, V1, V2) → a__U255(a__isNatural(V1), V2)
a__U255(tt, V2) → a__U256(a__isLNat(V2))
a__U256(tt) → tt
a__U261(tt, V2) → a__U262(a__isLNatKind(V2))
a__U262(tt) → tt
a__U271(tt, V2) → a__U272(a__isLNatKind(V2))
a__U272(tt) → tt
a__U281(tt, N) → a__U282(a__isNaturalKind(N), N)
a__U282(tt, N) → cons(mark(N), natsFrom(s(N)))
a__U291(tt, N, XS) → a__U292(a__isNaturalKind(N), N, XS)
a__U292(tt, N, XS) → a__U293(a__isLNat(XS), N, XS)
a__U293(tt, N, XS) → a__U294(a__isLNatKind(XS), N, XS)
a__U294(tt, N, XS) → a__head(a__afterNth(mark(N), mark(XS)))
a__U301(tt, X, Y) → a__U302(a__isLNatKind(X), Y)
a__U302(tt, Y) → a__U303(a__isLNat(Y), Y)
a__U303(tt, Y) → a__U304(a__isLNatKind(Y), Y)
a__U304(tt, Y) → mark(Y)
a__U31(tt, N, XS) → a__U32(a__isNaturalKind(N), N, XS)
a__U311(tt, XS) → a__U312(a__isLNatKind(XS), XS)
a__U312(tt, XS) → pair(nil, mark(XS))
a__U32(tt, N, XS) → a__U33(a__isLNat(XS), N, XS)
a__U321(tt, N, X, XS) → a__U322(a__isNaturalKind(N), N, X, XS)
a__U322(tt, N, X, XS) → a__U323(a__isNatural(X), N, X, XS)
a__U323(tt, N, X, XS) → a__U324(a__isNaturalKind(X), N, X, XS)
a__U324(tt, N, X, XS) → a__U325(a__isLNat(XS), N, X, XS)
a__U325(tt, N, X, XS) → a__U326(a__isLNatKind(XS), N, X, XS)
a__U326(tt, N, X, XS) → a__U327(a__splitAt(mark(N), mark(XS)), X)
a__U327(pair(YS, ZS), X) → pair(cons(mark(X), YS), mark(ZS))
a__U33(tt, N, XS) → a__U34(a__isLNatKind(XS), N)
a__U331(tt, N, XS) → a__U332(a__isNaturalKind(N), XS)
a__U332(tt, XS) → a__U333(a__isLNat(XS), XS)
a__U333(tt, XS) → a__U334(a__isLNatKind(XS), XS)
a__U334(tt, XS) → mark(XS)
a__U34(tt, N) → mark(N)
a__U341(tt, N, XS) → a__U342(a__isNaturalKind(N), N, XS)
a__U342(tt, N, XS) → a__U343(a__isLNat(XS), N, XS)
a__U343(tt, N, XS) → a__U344(a__isLNatKind(XS), N, XS)
a__U344(tt, N, XS) → a__fst(a__splitAt(mark(N), mark(XS)))
a__U41(tt, V1, V2) → a__U42(a__isNaturalKind(V1), V1, V2)
a__U42(tt, V1, V2) → a__U43(a__isLNatKind(V2), V1, V2)
a__U43(tt, V1, V2) → a__U44(a__isLNatKind(V2), V1, V2)
a__U44(tt, V1, V2) → a__U45(a__isNatural(V1), V2)
a__U45(tt, V2) → a__U46(a__isLNat(V2))
a__U46(tt) → tt
a__U51(tt, V1, V2) → a__U52(a__isNaturalKind(V1), V1, V2)
a__U52(tt, V1, V2) → a__U53(a__isLNatKind(V2), V1, V2)
a__U53(tt, V1, V2) → a__U54(a__isLNatKind(V2), V1, V2)
a__U54(tt, V1, V2) → a__U55(a__isNatural(V1), V2)
a__U55(tt, V2) → a__U56(a__isLNat(V2))
a__U56(tt) → tt
a__U61(tt, V1) → a__U62(a__isPLNatKind(V1), V1)
a__U62(tt, V1) → a__U63(a__isPLNat(V1))
a__U63(tt) → tt
a__U71(tt, V1) → a__U72(a__isNaturalKind(V1), V1)
a__U72(tt, V1) → a__U73(a__isNatural(V1))
a__U73(tt) → tt
a__U81(tt, V1) → a__U82(a__isPLNatKind(V1), V1)
a__U82(tt, V1) → a__U83(a__isPLNat(V1))
a__U83(tt) → tt
a__U91(tt, V1) → a__U92(a__isLNatKind(V1), V1)
a__U92(tt, V1) → a__U93(a__isLNat(V1))
a__U93(tt) → tt
a__afterNth(N, XS) → a__U11(a__isNatural(N), N, XS)
a__fst(pair(X, Y)) → a__U21(a__isLNat(X), X, Y)
a__head(cons(N, XS)) → a__U31(a__isNatural(N), N, XS)
a__isLNat(nil) → tt
a__isLNat(afterNth(V1, V2)) → a__U41(a__isNaturalKind(V1), V1, V2)
a__isLNat(cons(V1, V2)) → a__U51(a__isNaturalKind(V1), V1, V2)
a__isLNat(fst(V1)) → a__U61(a__isPLNatKind(V1), V1)
a__isLNat(natsFrom(V1)) → a__U71(a__isNaturalKind(V1), V1)
a__isLNat(snd(V1)) → a__U81(a__isPLNatKind(V1), V1)
a__isLNat(tail(V1)) → a__U91(a__isLNatKind(V1), V1)
a__isLNat(take(V1, V2)) → a__U101(a__isNaturalKind(V1), V1, V2)
a__isLNatKind(nil) → tt
a__isLNatKind(afterNth(V1, V2)) → a__U111(a__isNaturalKind(V1), V2)
a__isLNatKind(cons(V1, V2)) → a__U121(a__isNaturalKind(V1), V2)
a__isLNatKind(fst(V1)) → a__U131(a__isPLNatKind(V1))
a__isLNatKind(natsFrom(V1)) → a__U141(a__isNaturalKind(V1))
a__isLNatKind(snd(V1)) → a__U151(a__isPLNatKind(V1))
a__isLNatKind(tail(V1)) → a__U161(a__isLNatKind(V1))
a__isLNatKind(take(V1, V2)) → a__U171(a__isNaturalKind(V1), V2)
a__isNatural(0) → tt
a__isNatural(head(V1)) → a__U181(a__isLNatKind(V1), V1)
a__isNatural(s(V1)) → a__U191(a__isNaturalKind(V1), V1)
a__isNatural(sel(V1, V2)) → a__U201(a__isNaturalKind(V1), V1, V2)
a__isNaturalKind(0) → tt
a__isNaturalKind(head(V1)) → a__U211(a__isLNatKind(V1))
a__isNaturalKind(s(V1)) → a__U221(a__isNaturalKind(V1))
a__isNaturalKind(sel(V1, V2)) → a__U231(a__isNaturalKind(V1), V2)
a__isPLNat(pair(V1, V2)) → a__U241(a__isLNatKind(V1), V1, V2)
a__isPLNat(splitAt(V1, V2)) → a__U251(a__isNaturalKind(V1), V1, V2)
a__isPLNatKind(pair(V1, V2)) → a__U261(a__isLNatKind(V1), V2)
a__isPLNatKind(splitAt(V1, V2)) → a__U271(a__isNaturalKind(V1), V2)
a__natsFrom(N) → a__U281(a__isNatural(N), N)
a__sel(N, XS) → a__U291(a__isNatural(N), N, XS)
a__snd(pair(X, Y)) → a__U301(a__isLNat(X), X, Y)
a__splitAt(0, XS) → a__U311(a__isLNat(XS), XS)
a__splitAt(s(N), cons(X, XS)) → a__U321(a__isNatural(N), N, X, XS)
a__tail(cons(N, XS)) → a__U331(a__isNatural(N), N, XS)
a__take(N, XS) → a__U341(a__isNatural(N), N, XS)
mark(U101(X1, X2, X3)) → a__U101(mark(X1), X2, X3)
mark(U102(X1, X2, X3)) → a__U102(mark(X1), X2, X3)
mark(isNaturalKind(X)) → a__isNaturalKind(X)
mark(U103(X1, X2, X3)) → a__U103(mark(X1), X2, X3)
mark(isLNatKind(X)) → a__isLNatKind(X)
mark(U104(X1, X2, X3)) → a__U104(mark(X1), X2, X3)
mark(U105(X1, X2)) → a__U105(mark(X1), X2)
mark(isNatural(X)) → a__isNatural(X)
mark(U106(X)) → a__U106(mark(X))
mark(isLNat(X)) → a__isLNat(X)
mark(U11(X1, X2, X3)) → a__U11(mark(X1), X2, X3)
mark(U12(X1, X2, X3)) → a__U12(mark(X1), X2, X3)
mark(U111(X1, X2)) → a__U111(mark(X1), X2)
mark(U112(X)) → a__U112(mark(X))
mark(U13(X1, X2, X3)) → a__U13(mark(X1), X2, X3)
mark(U121(X1, X2)) → a__U121(mark(X1), X2)
mark(U122(X)) → a__U122(mark(X))
mark(U14(X1, X2, X3)) → a__U14(mark(X1), X2, X3)
mark(U131(X)) → a__U131(mark(X))
mark(snd(X)) → a__snd(mark(X))
mark(splitAt(X1, X2)) → a__splitAt(mark(X1), mark(X2))
mark(U141(X)) → a__U141(mark(X))
mark(U151(X)) → a__U151(mark(X))
mark(U161(X)) → a__U161(mark(X))
mark(U171(X1, X2)) → a__U171(mark(X1), X2)
mark(U172(X)) → a__U172(mark(X))
mark(U181(X1, X2)) → a__U181(mark(X1), X2)
mark(U182(X1, X2)) → a__U182(mark(X1), X2)
mark(U183(X)) → a__U183(mark(X))
mark(U191(X1, X2)) → a__U191(mark(X1), X2)
mark(U192(X1, X2)) → a__U192(mark(X1), X2)
mark(U193(X)) → a__U193(mark(X))
mark(U201(X1, X2, X3)) → a__U201(mark(X1), X2, X3)
mark(U202(X1, X2, X3)) → a__U202(mark(X1), X2, X3)
mark(U203(X1, X2, X3)) → a__U203(mark(X1), X2, X3)
mark(U204(X1, X2, X3)) → a__U204(mark(X1), X2, X3)
mark(U205(X1, X2)) → a__U205(mark(X1), X2)
mark(U206(X)) → a__U206(mark(X))
mark(U21(X1, X2, X3)) → a__U21(mark(X1), X2, X3)
mark(U22(X1, X2, X3)) → a__U22(mark(X1), X2, X3)
mark(U211(X)) → a__U211(mark(X))
mark(U23(X1, X2, X3)) → a__U23(mark(X1), X2, X3)
mark(U221(X)) → a__U221(mark(X))
mark(U24(X1, X2)) → a__U24(mark(X1), X2)
mark(U231(X1, X2)) → a__U231(mark(X1), X2)
mark(U232(X)) → a__U232(mark(X))
mark(U241(X1, X2, X3)) → a__U241(mark(X1), X2, X3)
mark(U242(X1, X2, X3)) → a__U242(mark(X1), X2, X3)
mark(U243(X1, X2, X3)) → a__U243(mark(X1), X2, X3)
mark(U244(X1, X2, X3)) → a__U244(mark(X1), X2, X3)
mark(U245(X1, X2)) → a__U245(mark(X1), X2)
mark(U246(X)) → a__U246(mark(X))
mark(U251(X1, X2, X3)) → a__U251(mark(X1), X2, X3)
mark(U252(X1, X2, X3)) → a__U252(mark(X1), X2, X3)
mark(U253(X1, X2, X3)) → a__U253(mark(X1), X2, X3)
mark(U254(X1, X2, X3)) → a__U254(mark(X1), X2, X3)
mark(U255(X1, X2)) → a__U255(mark(X1), X2)
mark(U256(X)) → a__U256(mark(X))
mark(U261(X1, X2)) → a__U261(mark(X1), X2)
mark(U262(X)) → a__U262(mark(X))
mark(U271(X1, X2)) → a__U271(mark(X1), X2)
mark(U272(X)) → a__U272(mark(X))
mark(U281(X1, X2)) → a__U281(mark(X1), X2)
mark(U282(X1, X2)) → a__U282(mark(X1), X2)
mark(natsFrom(X)) → a__natsFrom(mark(X))
mark(U291(X1, X2, X3)) → a__U291(mark(X1), X2, X3)
mark(U292(X1, X2, X3)) → a__U292(mark(X1), X2, X3)
mark(U293(X1, X2, X3)) → a__U293(mark(X1), X2, X3)
mark(U294(X1, X2, X3)) → a__U294(mark(X1), X2, X3)
mark(head(X)) → a__head(mark(X))
mark(afterNth(X1, X2)) → a__afterNth(mark(X1), mark(X2))
mark(U301(X1, X2, X3)) → a__U301(mark(X1), X2, X3)
mark(U302(X1, X2)) → a__U302(mark(X1), X2)
mark(U303(X1, X2)) → a__U303(mark(X1), X2)
mark(U304(X1, X2)) → a__U304(mark(X1), X2)
mark(U31(X1, X2, X3)) → a__U31(mark(X1), X2, X3)
mark(U32(X1, X2, X3)) → a__U32(mark(X1), X2, X3)
mark(U311(X1, X2)) → a__U311(mark(X1), X2)
mark(U312(X1, X2)) → a__U312(mark(X1), X2)
mark(U33(X1, X2, X3)) → a__U33(mark(X1), X2, X3)
mark(U321(X1, X2, X3, X4)) → a__U321(mark(X1), X2, X3, X4)
mark(U322(X1, X2, X3, X4)) → a__U322(mark(X1), X2, X3, X4)
mark(U323(X1, X2, X3, X4)) → a__U323(mark(X1), X2, X3, X4)
mark(U324(X1, X2, X3, X4)) → a__U324(mark(X1), X2, X3, X4)
mark(U325(X1, X2, X3, X4)) → a__U325(mark(X1), X2, X3, X4)
mark(U326(X1, X2, X3, X4)) → a__U326(mark(X1), X2, X3, X4)
mark(U327(X1, X2)) → a__U327(mark(X1), X2)
mark(U34(X1, X2)) → a__U34(mark(X1), X2)
mark(U331(X1, X2, X3)) → a__U331(mark(X1), X2, X3)
mark(U332(X1, X2)) → a__U332(mark(X1), X2)
mark(U333(X1, X2)) → a__U333(mark(X1), X2)
mark(U334(X1, X2)) → a__U334(mark(X1), X2)
mark(U341(X1, X2, X3)) → a__U341(mark(X1), X2, X3)
mark(U342(X1, X2, X3)) → a__U342(mark(X1), X2, X3)
mark(U343(X1, X2, X3)) → a__U343(mark(X1), X2, X3)
mark(U344(X1, X2, X3)) → a__U344(mark(X1), X2, X3)
mark(fst(X)) → a__fst(mark(X))
mark(U41(X1, X2, X3)) → a__U41(mark(X1), X2, X3)
mark(U42(X1, X2, X3)) → a__U42(mark(X1), X2, X3)
mark(U43(X1, X2, X3)) → a__U43(mark(X1), X2, X3)
mark(U44(X1, X2, X3)) → a__U44(mark(X1), X2, X3)
mark(U45(X1, X2)) → a__U45(mark(X1), X2)
mark(U46(X)) → a__U46(mark(X))
mark(U51(X1, X2, X3)) → a__U51(mark(X1), X2, X3)
mark(U52(X1, X2, X3)) → a__U52(mark(X1), X2, X3)
mark(U53(X1, X2, X3)) → a__U53(mark(X1), X2, X3)
mark(U54(X1, X2, X3)) → a__U54(mark(X1), X2, X3)
mark(U55(X1, X2)) → a__U55(mark(X1), X2)
mark(U56(X)) → a__U56(mark(X))
mark(U61(X1, X2)) → a__U61(mark(X1), X2)
mark(U62(X1, X2)) → a__U62(mark(X1), X2)
mark(isPLNatKind(X)) → a__isPLNatKind(X)
mark(U63(X)) → a__U63(mark(X))
mark(isPLNat(X)) → a__isPLNat(X)
mark(U71(X1, X2)) → a__U71(mark(X1), X2)
mark(U72(X1, X2)) → a__U72(mark(X1), X2)
mark(U73(X)) → a__U73(mark(X))
mark(U81(X1, X2)) → a__U81(mark(X1), X2)
mark(U82(X1, X2)) → a__U82(mark(X1), X2)
mark(U83(X)) → a__U83(mark(X))
mark(U91(X1, X2)) → a__U91(mark(X1), X2)
mark(U92(X1, X2)) → a__U92(mark(X1), X2)
mark(U93(X)) → a__U93(mark(X))
mark(tail(X)) → a__tail(mark(X))
mark(take(X1, X2)) → a__take(mark(X1), mark(X2))
mark(sel(X1, X2)) → a__sel(mark(X1), mark(X2))
mark(tt) → tt
mark(cons(X1, X2)) → cons(mark(X1), X2)
mark(s(X)) → s(mark(X))
mark(pair(X1, X2)) → pair(mark(X1), mark(X2))
mark(nil) → nil
mark(0) → 0
a__U101(X1, X2, X3) → U101(X1, X2, X3)
a__U102(X1, X2, X3) → U102(X1, X2, X3)
a__isNaturalKind(X) → isNaturalKind(X)
a__U103(X1, X2, X3) → U103(X1, X2, X3)
a__isLNatKind(X) → isLNatKind(X)
a__U104(X1, X2, X3) → U104(X1, X2, X3)
a__U105(X1, X2) → U105(X1, X2)
a__isNatural(X) → isNatural(X)
a__U106(X) → U106(X)
a__isLNat(X) → isLNat(X)
a__U11(X1, X2, X3) → U11(X1, X2, X3)
a__U12(X1, X2, X3) → U12(X1, X2, X3)
a__U111(X1, X2) → U111(X1, X2)
a__U112(X) → U112(X)
a__U13(X1, X2, X3) → U13(X1, X2, X3)
a__U121(X1, X2) → U121(X1, X2)
a__U122(X) → U122(X)
a__U14(X1, X2, X3) → U14(X1, X2, X3)
a__U131(X) → U131(X)
a__snd(X) → snd(X)
a__splitAt(X1, X2) → splitAt(X1, X2)
a__U141(X) → U141(X)
a__U151(X) → U151(X)
a__U161(X) → U161(X)
a__U171(X1, X2) → U171(X1, X2)
a__U172(X) → U172(X)
a__U181(X1, X2) → U181(X1, X2)
a__U182(X1, X2) → U182(X1, X2)
a__U183(X) → U183(X)
a__U191(X1, X2) → U191(X1, X2)
a__U192(X1, X2) → U192(X1, X2)
a__U193(X) → U193(X)
a__U201(X1, X2, X3) → U201(X1, X2, X3)
a__U202(X1, X2, X3) → U202(X1, X2, X3)
a__U203(X1, X2, X3) → U203(X1, X2, X3)
a__U204(X1, X2, X3) → U204(X1, X2, X3)
a__U205(X1, X2) → U205(X1, X2)
a__U206(X) → U206(X)
a__U21(X1, X2, X3) → U21(X1, X2, X3)
a__U22(X1, X2, X3) → U22(X1, X2, X3)
a__U211(X) → U211(X)
a__U23(X1, X2, X3) → U23(X1, X2, X3)
a__U221(X) → U221(X)
a__U24(X1, X2) → U24(X1, X2)
a__U231(X1, X2) → U231(X1, X2)
a__U232(X) → U232(X)
a__U241(X1, X2, X3) → U241(X1, X2, X3)
a__U242(X1, X2, X3) → U242(X1, X2, X3)
a__U243(X1, X2, X3) → U243(X1, X2, X3)
a__U244(X1, X2, X3) → U244(X1, X2, X3)
a__U245(X1, X2) → U245(X1, X2)
a__U246(X) → U246(X)
a__U251(X1, X2, X3) → U251(X1, X2, X3)
a__U252(X1, X2, X3) → U252(X1, X2, X3)
a__U253(X1, X2, X3) → U253(X1, X2, X3)
a__U254(X1, X2, X3) → U254(X1, X2, X3)
a__U255(X1, X2) → U255(X1, X2)
a__U256(X) → U256(X)
a__U261(X1, X2) → U261(X1, X2)
a__U262(X) → U262(X)
a__U271(X1, X2) → U271(X1, X2)
a__U272(X) → U272(X)
a__U281(X1, X2) → U281(X1, X2)
a__U282(X1, X2) → U282(X1, X2)
a__natsFrom(X) → natsFrom(X)
a__U291(X1, X2, X3) → U291(X1, X2, X3)
a__U292(X1, X2, X3) → U292(X1, X2, X3)
a__U293(X1, X2, X3) → U293(X1, X2, X3)
a__U294(X1, X2, X3) → U294(X1, X2, X3)
a__head(X) → head(X)
a__afterNth(X1, X2) → afterNth(X1, X2)
a__U301(X1, X2, X3) → U301(X1, X2, X3)
a__U302(X1, X2) → U302(X1, X2)
a__U303(X1, X2) → U303(X1, X2)
a__U304(X1, X2) → U304(X1, X2)
a__U31(X1, X2, X3) → U31(X1, X2, X3)
a__U32(X1, X2, X3) → U32(X1, X2, X3)
a__U311(X1, X2) → U311(X1, X2)
a__U312(X1, X2) → U312(X1, X2)
a__U33(X1, X2, X3) → U33(X1, X2, X3)
a__U321(X1, X2, X3, X4) → U321(X1, X2, X3, X4)
a__U322(X1, X2, X3, X4) → U322(X1, X2, X3, X4)
a__U323(X1, X2, X3, X4) → U323(X1, X2, X3, X4)
a__U324(X1, X2, X3, X4) → U324(X1, X2, X3, X4)
a__U325(X1, X2, X3, X4) → U325(X1, X2, X3, X4)
a__U326(X1, X2, X3, X4) → U326(X1, X2, X3, X4)
a__U327(X1, X2) → U327(X1, X2)
a__U34(X1, X2) → U34(X1, X2)
a__U331(X1, X2, X3) → U331(X1, X2, X3)
a__U332(X1, X2) → U332(X1, X2)
a__U333(X1, X2) → U333(X1, X2)
a__U334(X1, X2) → U334(X1, X2)
a__U341(X1, X2, X3) → U341(X1, X2, X3)
a__U342(X1, X2, X3) → U342(X1, X2, X3)
a__U343(X1, X2, X3) → U343(X1, X2, X3)
a__U344(X1, X2, X3) → U344(X1, X2, X3)
a__fst(X) → fst(X)
a__U41(X1, X2, X3) → U41(X1, X2, X3)
a__U42(X1, X2, X3) → U42(X1, X2, X3)
a__U43(X1, X2, X3) → U43(X1, X2, X3)
a__U44(X1, X2, X3) → U44(X1, X2, X3)
a__U45(X1, X2) → U45(X1, X2)
a__U46(X) → U46(X)
a__U51(X1, X2, X3) → U51(X1, X2, X3)
a__U52(X1, X2, X3) → U52(X1, X2, X3)
a__U53(X1, X2, X3) → U53(X1, X2, X3)
a__U54(X1, X2, X3) → U54(X1, X2, X3)
a__U55(X1, X2) → U55(X1, X2)
a__U56(X) → U56(X)
a__U61(X1, X2) → U61(X1, X2)
a__U62(X1, X2) → U62(X1, X2)
a__isPLNatKind(X) → isPLNatKind(X)
a__U63(X) → U63(X)
a__isPLNat(X) → isPLNat(X)
a__U71(X1, X2) → U71(X1, X2)
a__U72(X1, X2) → U72(X1, X2)
a__U73(X) → U73(X)
a__U81(X1, X2) → U81(X1, X2)
a__U82(X1, X2) → U82(X1, X2)
a__U83(X) → U83(X)
a__U91(X1, X2) → U91(X1, X2)
a__U92(X1, X2) → U92(X1, X2)
a__U93(X) → U93(X)
a__tail(X) → tail(X)
a__take(X1, X2) → take(X1, X2)
a__sel(X1, X2) → sel(X1, X2)

Q is empty.
We have to consider all minimal (P,Q,R)-chains.