/export/starexec/sandbox/solver/bin/starexec_run_complexity /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- WORST_CASE(Omega(n^1), O(n^1)) proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). (0) CpxTRS (1) NestedDefinedSymbolProof [UPPER BOUND(ID), 64 ms] (2) CpxTRS (3) RcToIrcProof [BOTH BOUNDS(ID, ID), 466 ms] (4) CpxTRS (5) CpxTrsToCdtProof [UPPER BOUND(ID), 49 ms] (6) CdtProblem (7) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CdtProblem (9) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (10) CdtProblem (11) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 24 ms] (12) CdtProblem (13) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 696 ms] (14) CdtProblem (15) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 304 ms] (16) CdtProblem (17) SIsEmptyProof [BOTH BOUNDS(ID, ID), 0 ms] (18) BOUNDS(1, 1) (19) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (20) CpxTRS (21) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (22) typed CpxTrs (23) OrderProof [LOWER BOUND(ID), 5 ms] (24) typed CpxTrs (25) RewriteLemmaProof [LOWER BOUND(ID), 767 ms] (26) BEST (27) proven lower bound (28) LowerBoundPropagationProof [FINISHED, 0 ms] (29) BOUNDS(n^1, INF) (30) typed CpxTrs (31) RewriteLemmaProof [LOWER BOUND(ID), 381 ms] (32) typed CpxTrs (33) RewriteLemmaProof [LOWER BOUND(ID), 332 ms] (34) typed CpxTrs (35) RewriteLemmaProof [LOWER BOUND(ID), 286 ms] (36) typed CpxTrs (37) RewriteLemmaProof [LOWER BOUND(ID), 197 ms] (38) typed CpxTrs (39) RewriteLemmaProof [LOWER BOUND(ID), 410 ms] (40) typed CpxTrs (41) RewriteLemmaProof [LOWER BOUND(ID), 148 ms] (42) typed CpxTrs (43) RewriteLemmaProof [LOWER BOUND(ID), 361 ms] (44) typed CpxTrs (45) RewriteLemmaProof [LOWER BOUND(ID), 124 ms] (46) typed CpxTrs (47) RewriteLemmaProof [LOWER BOUND(ID), 370 ms] (48) typed CpxTrs (49) RewriteLemmaProof [LOWER BOUND(ID), 138 ms] (50) typed CpxTrs (51) RewriteLemmaProof [LOWER BOUND(ID), 214 ms] (52) typed CpxTrs (53) RewriteLemmaProof [LOWER BOUND(ID), 112 ms] (54) typed CpxTrs (55) RewriteLemmaProof [LOWER BOUND(ID), 293 ms] (56) typed CpxTrs (57) RewriteLemmaProof [LOWER BOUND(ID), 209 ms] (58) typed CpxTrs (59) RewriteLemmaProof [LOWER BOUND(ID), 275 ms] (60) typed CpxTrs (61) RewriteLemmaProof [LOWER BOUND(ID), 152 ms] (62) typed CpxTrs (63) RewriteLemmaProof [LOWER BOUND(ID), 361 ms] (64) typed CpxTrs (65) RewriteLemmaProof [LOWER BOUND(ID), 306 ms] (66) typed CpxTrs (67) RewriteLemmaProof [LOWER BOUND(ID), 278 ms] (68) typed CpxTrs (69) RewriteLemmaProof [LOWER BOUND(ID), 261 ms] (70) typed CpxTrs (71) RewriteLemmaProof [LOWER BOUND(ID), 158 ms] (72) typed CpxTrs (73) RewriteLemmaProof [LOWER BOUND(ID), 347 ms] (74) typed CpxTrs (75) RewriteLemmaProof [LOWER BOUND(ID), 284 ms] (76) typed CpxTrs (77) RewriteLemmaProof [LOWER BOUND(ID), 278 ms] (78) typed CpxTrs (79) RewriteLemmaProof [LOWER BOUND(ID), 228 ms] (80) typed CpxTrs (81) RewriteLemmaProof [LOWER BOUND(ID), 430 ms] (82) typed CpxTrs (83) RewriteLemmaProof [LOWER BOUND(ID), 438 ms] (84) typed CpxTrs (85) RewriteLemmaProof [LOWER BOUND(ID), 423 ms] (86) typed CpxTrs (87) RewriteLemmaProof [LOWER BOUND(ID), 324 ms] (88) typed CpxTrs (89) RewriteLemmaProof [LOWER BOUND(ID), 181 ms] (90) typed CpxTrs (91) RewriteLemmaProof [LOWER BOUND(ID), 353 ms] (92) typed CpxTrs (93) RewriteLemmaProof [LOWER BOUND(ID), 410 ms] (94) typed CpxTrs (95) RewriteLemmaProof [LOWER BOUND(ID), 377 ms] (96) typed CpxTrs (97) RewriteLemmaProof [LOWER BOUND(ID), 257 ms] (98) typed CpxTrs (99) RewriteLemmaProof [LOWER BOUND(ID), 117 ms] (100) typed CpxTrs (101) RewriteLemmaProof [LOWER BOUND(ID), 111 ms] (102) typed CpxTrs (103) RewriteLemmaProof [LOWER BOUND(ID), 200 ms] (104) typed CpxTrs (105) RewriteLemmaProof [LOWER BOUND(ID), 278 ms] (106) typed CpxTrs (107) RewriteLemmaProof [LOWER BOUND(ID), 300 ms] (108) typed CpxTrs (109) RewriteLemmaProof [LOWER BOUND(ID), 134 ms] (110) typed CpxTrs (111) RewriteLemmaProof [LOWER BOUND(ID), 201 ms] (112) typed CpxTrs (113) RewriteLemmaProof [LOWER BOUND(ID), 397 ms] (114) typed CpxTrs ---------------------------------------- (0) Obligation: The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). The TRS R consists of the following rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0)) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0)) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0, XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0) -> ok(0) proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) S is empty. Rewrite Strategy: FULL ---------------------------------------- (1) NestedDefinedSymbolProof (UPPER BOUND(ID)) The following defined symbols can occur below the 0th argument of top: active, proper The following defined symbols can occur below the 0th argument of active: active, proper The following defined symbols can occur below the 0th argument of proper: active, proper Hence, the left-hand sides of the following rules are not basic-reachable and can be removed: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0)) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0)) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0, XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) ---------------------------------------- (2) Obligation: The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) S is empty. Rewrite Strategy: FULL ---------------------------------------- (3) RcToIrcProof (BOTH BOUNDS(ID, ID)) Converted rc-obligation to irc-obligation. As the TRS is a non-duplicating overlay system, we have rc = irc. ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (5) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS to CDT ---------------------------------------- (6) Obligation: Complexity Dependency Tuples Problem Rules: U101(mark(z0), z1, z2) -> mark(U101(z0, z1, z2)) U101(ok(z0), ok(z1), ok(z2)) -> ok(U101(z0, z1, z2)) U102(mark(z0), z1, z2) -> mark(U102(z0, z1, z2)) U102(ok(z0), ok(z1), ok(z2)) -> ok(U102(z0, z1, z2)) U103(mark(z0), z1, z2) -> mark(U103(z0, z1, z2)) U103(ok(z0), ok(z1), ok(z2)) -> ok(U103(z0, z1, z2)) U104(mark(z0), z1, z2) -> mark(U104(z0, z1, z2)) U104(ok(z0), ok(z1), ok(z2)) -> ok(U104(z0, z1, z2)) U105(mark(z0), z1) -> mark(U105(z0, z1)) U105(ok(z0), ok(z1)) -> ok(U105(z0, z1)) U106(mark(z0)) -> mark(U106(z0)) U106(ok(z0)) -> ok(U106(z0)) U11(mark(z0), z1, z2) -> mark(U11(z0, z1, z2)) U11(ok(z0), ok(z1), ok(z2)) -> ok(U11(z0, z1, z2)) U12(mark(z0), z1, z2) -> mark(U12(z0, z1, z2)) U12(ok(z0), ok(z1), ok(z2)) -> ok(U12(z0, z1, z2)) U111(mark(z0), z1) -> mark(U111(z0, z1)) U111(ok(z0), ok(z1)) -> ok(U111(z0, z1)) U112(mark(z0)) -> mark(U112(z0)) U112(ok(z0)) -> ok(U112(z0)) U13(mark(z0), z1, z2) -> mark(U13(z0, z1, z2)) U13(ok(z0), ok(z1), ok(z2)) -> ok(U13(z0, z1, z2)) U121(mark(z0), z1) -> mark(U121(z0, z1)) U121(ok(z0), ok(z1)) -> ok(U121(z0, z1)) U122(mark(z0)) -> mark(U122(z0)) U122(ok(z0)) -> ok(U122(z0)) U14(mark(z0), z1, z2) -> mark(U14(z0, z1, z2)) U14(ok(z0), ok(z1), ok(z2)) -> ok(U14(z0, z1, z2)) U131(mark(z0)) -> mark(U131(z0)) U131(ok(z0)) -> ok(U131(z0)) snd(mark(z0)) -> mark(snd(z0)) snd(ok(z0)) -> ok(snd(z0)) splitAt(mark(z0), z1) -> mark(splitAt(z0, z1)) splitAt(z0, mark(z1)) -> mark(splitAt(z0, z1)) splitAt(ok(z0), ok(z1)) -> ok(splitAt(z0, z1)) U141(mark(z0)) -> mark(U141(z0)) U141(ok(z0)) -> ok(U141(z0)) U151(mark(z0)) -> mark(U151(z0)) U151(ok(z0)) -> ok(U151(z0)) U161(mark(z0)) -> mark(U161(z0)) U161(ok(z0)) -> ok(U161(z0)) U171(mark(z0), z1) -> mark(U171(z0, z1)) U171(ok(z0), ok(z1)) -> ok(U171(z0, z1)) U172(mark(z0)) -> mark(U172(z0)) U172(ok(z0)) -> ok(U172(z0)) U181(mark(z0), z1) -> mark(U181(z0, z1)) U181(ok(z0), ok(z1)) -> ok(U181(z0, z1)) U182(mark(z0), z1) -> mark(U182(z0, z1)) U182(ok(z0), ok(z1)) -> ok(U182(z0, z1)) U183(mark(z0)) -> mark(U183(z0)) U183(ok(z0)) -> ok(U183(z0)) U191(mark(z0), z1) -> mark(U191(z0, z1)) U191(ok(z0), ok(z1)) -> ok(U191(z0, z1)) U192(mark(z0), z1) -> mark(U192(z0, z1)) U192(ok(z0), ok(z1)) -> ok(U192(z0, z1)) U193(mark(z0)) -> mark(U193(z0)) U193(ok(z0)) -> ok(U193(z0)) U201(mark(z0), z1, z2) -> mark(U201(z0, z1, z2)) U201(ok(z0), ok(z1), ok(z2)) -> ok(U201(z0, z1, z2)) U202(mark(z0), z1, z2) -> mark(U202(z0, z1, z2)) U202(ok(z0), ok(z1), ok(z2)) -> ok(U202(z0, z1, z2)) U203(mark(z0), z1, z2) -> mark(U203(z0, z1, z2)) U203(ok(z0), ok(z1), ok(z2)) -> ok(U203(z0, z1, z2)) U204(mark(z0), z1, z2) -> mark(U204(z0, z1, z2)) U204(ok(z0), ok(z1), ok(z2)) -> ok(U204(z0, z1, z2)) U205(mark(z0), z1) -> mark(U205(z0, z1)) U205(ok(z0), ok(z1)) -> ok(U205(z0, z1)) U206(mark(z0)) -> mark(U206(z0)) U206(ok(z0)) -> ok(U206(z0)) U21(mark(z0), z1, z2) -> mark(U21(z0, z1, z2)) U21(ok(z0), ok(z1), ok(z2)) -> ok(U21(z0, z1, z2)) U22(mark(z0), z1, z2) -> mark(U22(z0, z1, z2)) U22(ok(z0), ok(z1), ok(z2)) -> ok(U22(z0, z1, z2)) U211(mark(z0)) -> mark(U211(z0)) U211(ok(z0)) -> ok(U211(z0)) U23(mark(z0), z1, z2) -> mark(U23(z0, z1, z2)) U23(ok(z0), ok(z1), ok(z2)) -> ok(U23(z0, z1, z2)) U221(mark(z0)) -> mark(U221(z0)) U221(ok(z0)) -> ok(U221(z0)) U24(mark(z0), z1) -> mark(U24(z0, z1)) U24(ok(z0), ok(z1)) -> ok(U24(z0, z1)) U231(mark(z0), z1) -> mark(U231(z0, z1)) U231(ok(z0), ok(z1)) -> ok(U231(z0, z1)) U232(mark(z0)) -> mark(U232(z0)) U232(ok(z0)) -> ok(U232(z0)) U241(mark(z0), z1, z2) -> mark(U241(z0, z1, z2)) U241(ok(z0), ok(z1), ok(z2)) -> ok(U241(z0, z1, z2)) U242(mark(z0), z1, z2) -> mark(U242(z0, z1, z2)) U242(ok(z0), ok(z1), ok(z2)) -> ok(U242(z0, z1, z2)) U243(mark(z0), z1, z2) -> mark(U243(z0, z1, z2)) U243(ok(z0), ok(z1), ok(z2)) -> ok(U243(z0, z1, z2)) U244(mark(z0), z1, z2) -> mark(U244(z0, z1, z2)) U244(ok(z0), ok(z1), ok(z2)) -> ok(U244(z0, z1, z2)) U245(mark(z0), z1) -> mark(U245(z0, z1)) U245(ok(z0), ok(z1)) -> ok(U245(z0, z1)) U246(mark(z0)) -> mark(U246(z0)) U246(ok(z0)) -> ok(U246(z0)) U251(mark(z0), z1, z2) -> mark(U251(z0, z1, z2)) U251(ok(z0), ok(z1), ok(z2)) -> ok(U251(z0, z1, z2)) U252(mark(z0), z1, z2) -> mark(U252(z0, z1, z2)) U252(ok(z0), ok(z1), ok(z2)) -> ok(U252(z0, z1, z2)) U253(mark(z0), z1, z2) -> mark(U253(z0, z1, z2)) U253(ok(z0), ok(z1), ok(z2)) -> ok(U253(z0, z1, z2)) U254(mark(z0), z1, z2) -> mark(U254(z0, z1, z2)) U254(ok(z0), ok(z1), ok(z2)) -> ok(U254(z0, z1, z2)) U255(mark(z0), z1) -> mark(U255(z0, z1)) U255(ok(z0), ok(z1)) -> ok(U255(z0, z1)) U256(mark(z0)) -> mark(U256(z0)) U256(ok(z0)) -> ok(U256(z0)) U261(mark(z0), z1) -> mark(U261(z0, z1)) U261(ok(z0), ok(z1)) -> ok(U261(z0, z1)) U262(mark(z0)) -> mark(U262(z0)) U262(ok(z0)) -> ok(U262(z0)) U271(mark(z0), z1) -> mark(U271(z0, z1)) U271(ok(z0), ok(z1)) -> ok(U271(z0, z1)) U272(mark(z0)) -> mark(U272(z0)) U272(ok(z0)) -> ok(U272(z0)) U281(mark(z0), z1) -> mark(U281(z0, z1)) U281(ok(z0), ok(z1)) -> ok(U281(z0, z1)) U282(mark(z0), z1) -> mark(U282(z0, z1)) U282(ok(z0), ok(z1)) -> ok(U282(z0, z1)) cons(mark(z0), z1) -> mark(cons(z0, z1)) cons(ok(z0), ok(z1)) -> ok(cons(z0, z1)) natsFrom(mark(z0)) -> mark(natsFrom(z0)) natsFrom(ok(z0)) -> ok(natsFrom(z0)) s(mark(z0)) -> mark(s(z0)) s(ok(z0)) -> ok(s(z0)) U291(mark(z0), z1, z2) -> mark(U291(z0, z1, z2)) U291(ok(z0), ok(z1), ok(z2)) -> ok(U291(z0, z1, z2)) U292(mark(z0), z1, z2) -> mark(U292(z0, z1, z2)) U292(ok(z0), ok(z1), ok(z2)) -> ok(U292(z0, z1, z2)) U293(mark(z0), z1, z2) -> mark(U293(z0, z1, z2)) U293(ok(z0), ok(z1), ok(z2)) -> ok(U293(z0, z1, z2)) U294(mark(z0), z1, z2) -> mark(U294(z0, z1, z2)) U294(ok(z0), ok(z1), ok(z2)) -> ok(U294(z0, z1, z2)) head(mark(z0)) -> mark(head(z0)) head(ok(z0)) -> ok(head(z0)) afterNth(mark(z0), z1) -> mark(afterNth(z0, z1)) afterNth(z0, mark(z1)) -> mark(afterNth(z0, z1)) afterNth(ok(z0), ok(z1)) -> ok(afterNth(z0, z1)) U301(mark(z0), z1, z2) -> mark(U301(z0, z1, z2)) U301(ok(z0), ok(z1), ok(z2)) -> ok(U301(z0, z1, z2)) U302(mark(z0), z1) -> mark(U302(z0, z1)) U302(ok(z0), ok(z1)) -> ok(U302(z0, z1)) U303(mark(z0), z1) -> mark(U303(z0, z1)) U303(ok(z0), ok(z1)) -> ok(U303(z0, z1)) U304(mark(z0), z1) -> mark(U304(z0, z1)) U304(ok(z0), ok(z1)) -> ok(U304(z0, z1)) U31(mark(z0), z1, z2) -> mark(U31(z0, z1, z2)) U31(ok(z0), ok(z1), ok(z2)) -> ok(U31(z0, z1, z2)) U32(mark(z0), z1, z2) -> mark(U32(z0, z1, z2)) U32(ok(z0), ok(z1), ok(z2)) -> ok(U32(z0, z1, z2)) U311(mark(z0), z1) -> mark(U311(z0, z1)) U311(ok(z0), ok(z1)) -> ok(U311(z0, z1)) U312(mark(z0), z1) -> mark(U312(z0, z1)) U312(ok(z0), ok(z1)) -> ok(U312(z0, z1)) pair(mark(z0), z1) -> mark(pair(z0, z1)) pair(z0, mark(z1)) -> mark(pair(z0, z1)) pair(ok(z0), ok(z1)) -> ok(pair(z0, z1)) U33(mark(z0), z1, z2) -> mark(U33(z0, z1, z2)) U33(ok(z0), ok(z1), ok(z2)) -> ok(U33(z0, z1, z2)) U321(mark(z0), z1, z2, z3) -> mark(U321(z0, z1, z2, z3)) U321(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U321(z0, z1, z2, z3)) U322(mark(z0), z1, z2, z3) -> mark(U322(z0, z1, z2, z3)) U322(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U322(z0, z1, z2, z3)) U323(mark(z0), z1, z2, z3) -> mark(U323(z0, z1, z2, z3)) U323(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U323(z0, z1, z2, z3)) U324(mark(z0), z1, z2, z3) -> mark(U324(z0, z1, z2, z3)) U324(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U324(z0, z1, z2, z3)) U325(mark(z0), z1, z2, z3) -> mark(U325(z0, z1, z2, z3)) U325(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U325(z0, z1, z2, z3)) U326(mark(z0), z1, z2, z3) -> mark(U326(z0, z1, z2, z3)) U326(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U326(z0, z1, z2, z3)) U327(mark(z0), z1) -> mark(U327(z0, z1)) U327(ok(z0), ok(z1)) -> ok(U327(z0, z1)) U34(mark(z0), z1) -> mark(U34(z0, z1)) U34(ok(z0), ok(z1)) -> ok(U34(z0, z1)) U331(mark(z0), z1, z2) -> mark(U331(z0, z1, z2)) U331(ok(z0), ok(z1), ok(z2)) -> ok(U331(z0, z1, z2)) U332(mark(z0), z1) -> mark(U332(z0, z1)) U332(ok(z0), ok(z1)) -> ok(U332(z0, z1)) U333(mark(z0), z1) -> mark(U333(z0, z1)) U333(ok(z0), ok(z1)) -> ok(U333(z0, z1)) U334(mark(z0), z1) -> mark(U334(z0, z1)) U334(ok(z0), ok(z1)) -> ok(U334(z0, z1)) U341(mark(z0), z1, z2) -> mark(U341(z0, z1, z2)) U341(ok(z0), ok(z1), ok(z2)) -> ok(U341(z0, z1, z2)) U342(mark(z0), z1, z2) -> mark(U342(z0, z1, z2)) U342(ok(z0), ok(z1), ok(z2)) -> ok(U342(z0, z1, z2)) U343(mark(z0), z1, z2) -> mark(U343(z0, z1, z2)) U343(ok(z0), ok(z1), ok(z2)) -> ok(U343(z0, z1, z2)) U344(mark(z0), z1, z2) -> mark(U344(z0, z1, z2)) U344(ok(z0), ok(z1), ok(z2)) -> ok(U344(z0, z1, z2)) fst(mark(z0)) -> mark(fst(z0)) fst(ok(z0)) -> ok(fst(z0)) U41(mark(z0), z1, z2) -> mark(U41(z0, z1, z2)) U41(ok(z0), ok(z1), ok(z2)) -> ok(U41(z0, z1, z2)) U42(mark(z0), z1, z2) -> mark(U42(z0, z1, z2)) U42(ok(z0), ok(z1), ok(z2)) -> ok(U42(z0, z1, z2)) U43(mark(z0), z1, z2) -> mark(U43(z0, z1, z2)) U43(ok(z0), ok(z1), ok(z2)) -> ok(U43(z0, z1, z2)) U44(mark(z0), z1, z2) -> mark(U44(z0, z1, z2)) U44(ok(z0), ok(z1), ok(z2)) -> ok(U44(z0, z1, z2)) U45(mark(z0), z1) -> mark(U45(z0, z1)) U45(ok(z0), ok(z1)) -> ok(U45(z0, z1)) U46(mark(z0)) -> mark(U46(z0)) U46(ok(z0)) -> ok(U46(z0)) U51(mark(z0), z1, z2) -> mark(U51(z0, z1, z2)) U51(ok(z0), ok(z1), ok(z2)) -> ok(U51(z0, z1, z2)) U52(mark(z0), z1, z2) -> mark(U52(z0, z1, z2)) U52(ok(z0), ok(z1), ok(z2)) -> ok(U52(z0, z1, z2)) U53(mark(z0), z1, z2) -> mark(U53(z0, z1, z2)) U53(ok(z0), ok(z1), ok(z2)) -> ok(U53(z0, z1, z2)) U54(mark(z0), z1, z2) -> mark(U54(z0, z1, z2)) U54(ok(z0), ok(z1), ok(z2)) -> ok(U54(z0, z1, z2)) U55(mark(z0), z1) -> mark(U55(z0, z1)) U55(ok(z0), ok(z1)) -> ok(U55(z0, z1)) U56(mark(z0)) -> mark(U56(z0)) U56(ok(z0)) -> ok(U56(z0)) U61(mark(z0), z1) -> mark(U61(z0, z1)) U61(ok(z0), ok(z1)) -> ok(U61(z0, z1)) U62(mark(z0), z1) -> mark(U62(z0, z1)) U62(ok(z0), ok(z1)) -> ok(U62(z0, z1)) U63(mark(z0)) -> mark(U63(z0)) U63(ok(z0)) -> ok(U63(z0)) U71(mark(z0), z1) -> mark(U71(z0, z1)) U71(ok(z0), ok(z1)) -> ok(U71(z0, z1)) U72(mark(z0), z1) -> mark(U72(z0, z1)) U72(ok(z0), ok(z1)) -> ok(U72(z0, z1)) U73(mark(z0)) -> mark(U73(z0)) U73(ok(z0)) -> ok(U73(z0)) U81(mark(z0), z1) -> mark(U81(z0, z1)) U81(ok(z0), ok(z1)) -> ok(U81(z0, z1)) U82(mark(z0), z1) -> mark(U82(z0, z1)) U82(ok(z0), ok(z1)) -> ok(U82(z0, z1)) U83(mark(z0)) -> mark(U83(z0)) U83(ok(z0)) -> ok(U83(z0)) U91(mark(z0), z1) -> mark(U91(z0, z1)) U91(ok(z0), ok(z1)) -> ok(U91(z0, z1)) U92(mark(z0), z1) -> mark(U92(z0, z1)) U92(ok(z0), ok(z1)) -> ok(U92(z0, z1)) U93(mark(z0)) -> mark(U93(z0)) U93(ok(z0)) -> ok(U93(z0)) tail(mark(z0)) -> mark(tail(z0)) tail(ok(z0)) -> ok(tail(z0)) take(mark(z0), z1) -> mark(take(z0, z1)) take(z0, mark(z1)) -> mark(take(z0, z1)) take(ok(z0), ok(z1)) -> ok(take(z0, z1)) sel(mark(z0), z1) -> mark(sel(z0, z1)) sel(z0, mark(z1)) -> mark(sel(z0, z1)) sel(ok(z0), ok(z1)) -> ok(sel(z0, z1)) proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) isNaturalKind(ok(z0)) -> ok(isNaturalKind(z0)) isLNatKind(ok(z0)) -> ok(isLNatKind(z0)) isNatural(ok(z0)) -> ok(isNatural(z0)) isLNat(ok(z0)) -> ok(isLNat(z0)) isPLNatKind(ok(z0)) -> ok(isPLNatKind(z0)) isPLNat(ok(z0)) -> ok(isPLNat(z0)) top(mark(z0)) -> top(proper(z0)) top(ok(z0)) -> top(active(z0)) Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) PROPER(tt) -> c251 PROPER(nil) -> c252 PROPER(0) -> c253 ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0)), PROPER(z0)) TOP(ok(z0)) -> c261(TOP(active(z0))) S tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) PROPER(tt) -> c251 PROPER(nil) -> c252 PROPER(0) -> c253 ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0)), PROPER(z0)) TOP(ok(z0)) -> c261(TOP(active(z0))) K tuples:none Defined Rule Symbols: U101_3, U102_3, U103_3, U104_3, U105_2, U106_1, U11_3, U12_3, U111_2, U112_1, U13_3, U121_2, U122_1, U14_3, U131_1, snd_1, splitAt_2, U141_1, U151_1, U161_1, U171_2, U172_1, U181_2, U182_2, U183_1, U191_2, U192_2, U193_1, U201_3, U202_3, U203_3, U204_3, U205_2, U206_1, U21_3, U22_3, U211_1, U23_3, U221_1, U24_2, U231_2, U232_1, U241_3, U242_3, U243_3, U244_3, U245_2, U246_1, U251_3, U252_3, U253_3, U254_3, U255_2, U256_1, U261_2, U262_1, U271_2, U272_1, U281_2, U282_2, cons_2, natsFrom_1, s_1, U291_3, U292_3, U293_3, U294_3, head_1, afterNth_2, U301_3, U302_2, U303_2, U304_2, U31_3, U32_3, U311_2, U312_2, pair_2, U33_3, U321_4, U322_4, U323_4, U324_4, U325_4, U326_4, U327_2, U34_2, U331_3, U332_2, U333_2, U334_2, U341_3, U342_3, U343_3, U344_3, fst_1, U41_3, U42_3, U43_3, U44_3, U45_2, U46_1, U51_3, U52_3, U53_3, U54_3, U55_2, U56_1, U61_2, U62_2, U63_1, U71_2, U72_2, U73_1, U81_2, U82_2, U83_1, U91_2, U92_2, U93_1, tail_1, take_2, sel_2, proper_1, isNaturalKind_1, isLNatKind_1, isNatural_1, isLNat_1, isPLNatKind_1, isPLNat_1, top_1 Defined Pair Symbols: U101'_3, U102'_3, U103'_3, U104'_3, U105'_2, U106'_1, U11'_3, U12'_3, U111'_2, U112'_1, U13'_3, U121'_2, U122'_1, U14'_3, U131'_1, SND_1, SPLITAT_2, U141'_1, U151'_1, U161'_1, U171'_2, U172'_1, U181'_2, U182'_2, U183'_1, U191'_2, U192'_2, U193'_1, U201'_3, U202'_3, U203'_3, U204'_3, U205'_2, U206'_1, U21'_3, U22'_3, U211'_1, U23'_3, U221'_1, U24'_2, U231'_2, U232'_1, U241'_3, U242'_3, U243'_3, U244'_3, U245'_2, U246'_1, U251'_3, U252'_3, U253'_3, U254'_3, U255'_2, U256'_1, U261'_2, U262'_1, U271'_2, U272'_1, U281'_2, U282'_2, CONS_2, NATSFROM_1, S_1, U291'_3, U292'_3, U293'_3, U294'_3, HEAD_1, AFTERNTH_2, U301'_3, U302'_2, U303'_2, U304'_2, U31'_3, U32'_3, U311'_2, U312'_2, PAIR_2, U33'_3, U321'_4, U322'_4, U323'_4, U324'_4, U325'_4, U326'_4, U327'_2, U34'_2, U331'_3, U332'_2, U333'_2, U334'_2, U341'_3, U342'_3, U343'_3, U344'_3, FST_1, U41'_3, U42'_3, U43'_3, U44'_3, U45'_2, U46'_1, U51'_3, U52'_3, U53'_3, U54'_3, U55'_2, U56'_1, U61'_2, U62'_2, U63'_1, U71'_2, U72'_2, U73'_1, U81'_2, U82'_2, U83'_1, U91'_2, U92'_2, U93'_1, TAIL_1, TAKE_2, SEL_2, PROPER_1, ISNATURALKIND_1, ISLNATKIND_1, ISNATURAL_1, ISLNAT_1, ISPLNATKIND_1, ISPLNAT_1, TOP_1 Compound Symbols: c_1, c1_1, c2_1, c3_1, c4_1, c5_1, c6_1, c7_1, c8_1, c9_1, c10_1, c11_1, c12_1, c13_1, c14_1, c15_1, c16_1, c17_1, c18_1, c19_1, c20_1, c21_1, c22_1, c23_1, c24_1, c25_1, c26_1, c27_1, c28_1, c29_1, c30_1, c31_1, c32_1, c33_1, c34_1, c35_1, c36_1, c37_1, c38_1, c39_1, c40_1, c41_1, c42_1, c43_1, c44_1, c45_1, c46_1, c47_1, c48_1, c49_1, c50_1, c51_1, c52_1, c53_1, c54_1, c55_1, c56_1, c57_1, c58_1, c59_1, c60_1, c61_1, c62_1, c63_1, c64_1, c65_1, c66_1, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c103_1, c104_1, c105_1, c106_1, c107_1, c108_1, c109_1, c110_1, c111_1, c112_1, c113_1, c114_1, c115_1, c116_1, c117_1, c118_1, c119_1, c120_1, c121_1, c122_1, c123_1, c124_1, c125_1, c126_1, c127_1, c128_1, c129_1, c130_1, c131_1, c132_1, c133_1, c134_1, c135_1, c136_1, c137_1, c138_1, c139_1, c140_1, c141_1, c142_1, c143_1, c144_1, c145_1, c146_1, c147_1, c148_1, c149_1, c150_1, c151_1, c152_1, c153_1, c154_1, c155_1, c156_1, c157_1, c158_1, c159_1, c160_1, c161_1, c162_1, c163_1, c164_1, c165_1, c166_1, c167_1, c168_1, c169_1, c170_1, c171_1, c172_1, c173_1, c174_1, c175_1, c176_1, c177_1, c178_1, c179_1, c180_1, c181_1, c182_1, c183_1, c184_1, c185_1, c186_1, c187_1, c188_1, c189_1, c190_1, c191_1, c192_1, c193_1, c194_1, c195_1, c196_1, c197_1, c198_1, c199_1, c200_1, c201_1, c202_1, c203_1, c204_1, c205_1, c206_1, c207_1, c208_1, c209_1, c210_1, c211_1, c212_1, c213_1, c214_1, c215_1, c216_1, c217_1, c218_1, c219_1, c220_1, c221_1, c222_1, c223_1, c224_1, c225_1, c226_1, c227_1, c228_1, c229_1, c230_1, c231_1, c232_1, c233_1, c234_1, c235_1, c236_1, c237_1, c238_1, c239_1, c240_1, c241_1, c242_1, c243_1, c244_1, c245_1, c246_1, c247_1, c248_1, c249_1, c250_1, c251, c252, c253, c254_1, c255_1, c256_1, c257_1, c258_1, c259_1, c260_2, c261_1 ---------------------------------------- (7) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: TOP(ok(z0)) -> c261(TOP(active(z0))) PROPER(tt) -> c251 PROPER(nil) -> c252 PROPER(0) -> c253 ---------------------------------------- (8) Obligation: Complexity Dependency Tuples Problem Rules: U101(mark(z0), z1, z2) -> mark(U101(z0, z1, z2)) U101(ok(z0), ok(z1), ok(z2)) -> ok(U101(z0, z1, z2)) U102(mark(z0), z1, z2) -> mark(U102(z0, z1, z2)) U102(ok(z0), ok(z1), ok(z2)) -> ok(U102(z0, z1, z2)) U103(mark(z0), z1, z2) -> mark(U103(z0, z1, z2)) U103(ok(z0), ok(z1), ok(z2)) -> ok(U103(z0, z1, z2)) U104(mark(z0), z1, z2) -> mark(U104(z0, z1, z2)) U104(ok(z0), ok(z1), ok(z2)) -> ok(U104(z0, z1, z2)) U105(mark(z0), z1) -> mark(U105(z0, z1)) U105(ok(z0), ok(z1)) -> ok(U105(z0, z1)) U106(mark(z0)) -> mark(U106(z0)) U106(ok(z0)) -> ok(U106(z0)) U11(mark(z0), z1, z2) -> mark(U11(z0, z1, z2)) U11(ok(z0), ok(z1), ok(z2)) -> ok(U11(z0, z1, z2)) U12(mark(z0), z1, z2) -> mark(U12(z0, z1, z2)) U12(ok(z0), ok(z1), ok(z2)) -> ok(U12(z0, z1, z2)) U111(mark(z0), z1) -> mark(U111(z0, z1)) U111(ok(z0), ok(z1)) -> ok(U111(z0, z1)) U112(mark(z0)) -> mark(U112(z0)) U112(ok(z0)) -> ok(U112(z0)) U13(mark(z0), z1, z2) -> mark(U13(z0, z1, z2)) U13(ok(z0), ok(z1), ok(z2)) -> ok(U13(z0, z1, z2)) U121(mark(z0), z1) -> mark(U121(z0, z1)) U121(ok(z0), ok(z1)) -> ok(U121(z0, z1)) U122(mark(z0)) -> mark(U122(z0)) U122(ok(z0)) -> ok(U122(z0)) U14(mark(z0), z1, z2) -> mark(U14(z0, z1, z2)) U14(ok(z0), ok(z1), ok(z2)) -> ok(U14(z0, z1, z2)) U131(mark(z0)) -> mark(U131(z0)) U131(ok(z0)) -> ok(U131(z0)) snd(mark(z0)) -> mark(snd(z0)) snd(ok(z0)) -> ok(snd(z0)) splitAt(mark(z0), z1) -> mark(splitAt(z0, z1)) splitAt(z0, mark(z1)) -> mark(splitAt(z0, z1)) splitAt(ok(z0), ok(z1)) -> ok(splitAt(z0, z1)) U141(mark(z0)) -> mark(U141(z0)) U141(ok(z0)) -> ok(U141(z0)) U151(mark(z0)) -> mark(U151(z0)) U151(ok(z0)) -> ok(U151(z0)) U161(mark(z0)) -> mark(U161(z0)) U161(ok(z0)) -> ok(U161(z0)) U171(mark(z0), z1) -> mark(U171(z0, z1)) U171(ok(z0), ok(z1)) -> ok(U171(z0, z1)) U172(mark(z0)) -> mark(U172(z0)) U172(ok(z0)) -> ok(U172(z0)) U181(mark(z0), z1) -> mark(U181(z0, z1)) U181(ok(z0), ok(z1)) -> ok(U181(z0, z1)) U182(mark(z0), z1) -> mark(U182(z0, z1)) U182(ok(z0), ok(z1)) -> ok(U182(z0, z1)) U183(mark(z0)) -> mark(U183(z0)) U183(ok(z0)) -> ok(U183(z0)) U191(mark(z0), z1) -> mark(U191(z0, z1)) U191(ok(z0), ok(z1)) -> ok(U191(z0, z1)) U192(mark(z0), z1) -> mark(U192(z0, z1)) U192(ok(z0), ok(z1)) -> ok(U192(z0, z1)) U193(mark(z0)) -> mark(U193(z0)) U193(ok(z0)) -> ok(U193(z0)) U201(mark(z0), z1, z2) -> mark(U201(z0, z1, z2)) U201(ok(z0), ok(z1), ok(z2)) -> ok(U201(z0, z1, z2)) U202(mark(z0), z1, z2) -> mark(U202(z0, z1, z2)) U202(ok(z0), ok(z1), ok(z2)) -> ok(U202(z0, z1, z2)) U203(mark(z0), z1, z2) -> mark(U203(z0, z1, z2)) U203(ok(z0), ok(z1), ok(z2)) -> ok(U203(z0, z1, z2)) U204(mark(z0), z1, z2) -> mark(U204(z0, z1, z2)) U204(ok(z0), ok(z1), ok(z2)) -> ok(U204(z0, z1, z2)) U205(mark(z0), z1) -> mark(U205(z0, z1)) U205(ok(z0), ok(z1)) -> ok(U205(z0, z1)) U206(mark(z0)) -> mark(U206(z0)) U206(ok(z0)) -> ok(U206(z0)) U21(mark(z0), z1, z2) -> mark(U21(z0, z1, z2)) U21(ok(z0), ok(z1), ok(z2)) -> ok(U21(z0, z1, z2)) U22(mark(z0), z1, z2) -> mark(U22(z0, z1, z2)) U22(ok(z0), ok(z1), ok(z2)) -> ok(U22(z0, z1, z2)) U211(mark(z0)) -> mark(U211(z0)) U211(ok(z0)) -> ok(U211(z0)) U23(mark(z0), z1, z2) -> mark(U23(z0, z1, z2)) U23(ok(z0), ok(z1), ok(z2)) -> ok(U23(z0, z1, z2)) U221(mark(z0)) -> mark(U221(z0)) U221(ok(z0)) -> ok(U221(z0)) U24(mark(z0), z1) -> mark(U24(z0, z1)) U24(ok(z0), ok(z1)) -> ok(U24(z0, z1)) U231(mark(z0), z1) -> mark(U231(z0, z1)) U231(ok(z0), ok(z1)) -> ok(U231(z0, z1)) U232(mark(z0)) -> mark(U232(z0)) U232(ok(z0)) -> ok(U232(z0)) U241(mark(z0), z1, z2) -> mark(U241(z0, z1, z2)) U241(ok(z0), ok(z1), ok(z2)) -> ok(U241(z0, z1, z2)) U242(mark(z0), z1, z2) -> mark(U242(z0, z1, z2)) U242(ok(z0), ok(z1), ok(z2)) -> ok(U242(z0, z1, z2)) U243(mark(z0), z1, z2) -> mark(U243(z0, z1, z2)) U243(ok(z0), ok(z1), ok(z2)) -> ok(U243(z0, z1, z2)) U244(mark(z0), z1, z2) -> mark(U244(z0, z1, z2)) U244(ok(z0), ok(z1), ok(z2)) -> ok(U244(z0, z1, z2)) U245(mark(z0), z1) -> mark(U245(z0, z1)) U245(ok(z0), ok(z1)) -> ok(U245(z0, z1)) U246(mark(z0)) -> mark(U246(z0)) U246(ok(z0)) -> ok(U246(z0)) U251(mark(z0), z1, z2) -> mark(U251(z0, z1, z2)) U251(ok(z0), ok(z1), ok(z2)) -> ok(U251(z0, z1, z2)) U252(mark(z0), z1, z2) -> mark(U252(z0, z1, z2)) U252(ok(z0), ok(z1), ok(z2)) -> ok(U252(z0, z1, z2)) U253(mark(z0), z1, z2) -> mark(U253(z0, z1, z2)) U253(ok(z0), ok(z1), ok(z2)) -> ok(U253(z0, z1, z2)) U254(mark(z0), z1, z2) -> mark(U254(z0, z1, z2)) U254(ok(z0), ok(z1), ok(z2)) -> ok(U254(z0, z1, z2)) U255(mark(z0), z1) -> mark(U255(z0, z1)) U255(ok(z0), ok(z1)) -> ok(U255(z0, z1)) U256(mark(z0)) -> mark(U256(z0)) U256(ok(z0)) -> ok(U256(z0)) U261(mark(z0), z1) -> mark(U261(z0, z1)) U261(ok(z0), ok(z1)) -> ok(U261(z0, z1)) U262(mark(z0)) -> mark(U262(z0)) U262(ok(z0)) -> ok(U262(z0)) U271(mark(z0), z1) -> mark(U271(z0, z1)) U271(ok(z0), ok(z1)) -> ok(U271(z0, z1)) U272(mark(z0)) -> mark(U272(z0)) U272(ok(z0)) -> ok(U272(z0)) U281(mark(z0), z1) -> mark(U281(z0, z1)) U281(ok(z0), ok(z1)) -> ok(U281(z0, z1)) U282(mark(z0), z1) -> mark(U282(z0, z1)) U282(ok(z0), ok(z1)) -> ok(U282(z0, z1)) cons(mark(z0), z1) -> mark(cons(z0, z1)) cons(ok(z0), ok(z1)) -> ok(cons(z0, z1)) natsFrom(mark(z0)) -> mark(natsFrom(z0)) natsFrom(ok(z0)) -> ok(natsFrom(z0)) s(mark(z0)) -> mark(s(z0)) s(ok(z0)) -> ok(s(z0)) U291(mark(z0), z1, z2) -> mark(U291(z0, z1, z2)) U291(ok(z0), ok(z1), ok(z2)) -> ok(U291(z0, z1, z2)) U292(mark(z0), z1, z2) -> mark(U292(z0, z1, z2)) U292(ok(z0), ok(z1), ok(z2)) -> ok(U292(z0, z1, z2)) U293(mark(z0), z1, z2) -> mark(U293(z0, z1, z2)) U293(ok(z0), ok(z1), ok(z2)) -> ok(U293(z0, z1, z2)) U294(mark(z0), z1, z2) -> mark(U294(z0, z1, z2)) U294(ok(z0), ok(z1), ok(z2)) -> ok(U294(z0, z1, z2)) head(mark(z0)) -> mark(head(z0)) head(ok(z0)) -> ok(head(z0)) afterNth(mark(z0), z1) -> mark(afterNth(z0, z1)) afterNth(z0, mark(z1)) -> mark(afterNth(z0, z1)) afterNth(ok(z0), ok(z1)) -> ok(afterNth(z0, z1)) U301(mark(z0), z1, z2) -> mark(U301(z0, z1, z2)) U301(ok(z0), ok(z1), ok(z2)) -> ok(U301(z0, z1, z2)) U302(mark(z0), z1) -> mark(U302(z0, z1)) U302(ok(z0), ok(z1)) -> ok(U302(z0, z1)) U303(mark(z0), z1) -> mark(U303(z0, z1)) U303(ok(z0), ok(z1)) -> ok(U303(z0, z1)) U304(mark(z0), z1) -> mark(U304(z0, z1)) U304(ok(z0), ok(z1)) -> ok(U304(z0, z1)) U31(mark(z0), z1, z2) -> mark(U31(z0, z1, z2)) U31(ok(z0), ok(z1), ok(z2)) -> ok(U31(z0, z1, z2)) U32(mark(z0), z1, z2) -> mark(U32(z0, z1, z2)) U32(ok(z0), ok(z1), ok(z2)) -> ok(U32(z0, z1, z2)) U311(mark(z0), z1) -> mark(U311(z0, z1)) U311(ok(z0), ok(z1)) -> ok(U311(z0, z1)) U312(mark(z0), z1) -> mark(U312(z0, z1)) U312(ok(z0), ok(z1)) -> ok(U312(z0, z1)) pair(mark(z0), z1) -> mark(pair(z0, z1)) pair(z0, mark(z1)) -> mark(pair(z0, z1)) pair(ok(z0), ok(z1)) -> ok(pair(z0, z1)) U33(mark(z0), z1, z2) -> mark(U33(z0, z1, z2)) U33(ok(z0), ok(z1), ok(z2)) -> ok(U33(z0, z1, z2)) U321(mark(z0), z1, z2, z3) -> mark(U321(z0, z1, z2, z3)) U321(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U321(z0, z1, z2, z3)) U322(mark(z0), z1, z2, z3) -> mark(U322(z0, z1, z2, z3)) U322(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U322(z0, z1, z2, z3)) U323(mark(z0), z1, z2, z3) -> mark(U323(z0, z1, z2, z3)) U323(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U323(z0, z1, z2, z3)) U324(mark(z0), z1, z2, z3) -> mark(U324(z0, z1, z2, z3)) U324(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U324(z0, z1, z2, z3)) U325(mark(z0), z1, z2, z3) -> mark(U325(z0, z1, z2, z3)) U325(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U325(z0, z1, z2, z3)) U326(mark(z0), z1, z2, z3) -> mark(U326(z0, z1, z2, z3)) U326(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U326(z0, z1, z2, z3)) U327(mark(z0), z1) -> mark(U327(z0, z1)) U327(ok(z0), ok(z1)) -> ok(U327(z0, z1)) U34(mark(z0), z1) -> mark(U34(z0, z1)) U34(ok(z0), ok(z1)) -> ok(U34(z0, z1)) U331(mark(z0), z1, z2) -> mark(U331(z0, z1, z2)) U331(ok(z0), ok(z1), ok(z2)) -> ok(U331(z0, z1, z2)) U332(mark(z0), z1) -> mark(U332(z0, z1)) U332(ok(z0), ok(z1)) -> ok(U332(z0, z1)) U333(mark(z0), z1) -> mark(U333(z0, z1)) U333(ok(z0), ok(z1)) -> ok(U333(z0, z1)) U334(mark(z0), z1) -> mark(U334(z0, z1)) U334(ok(z0), ok(z1)) -> ok(U334(z0, z1)) U341(mark(z0), z1, z2) -> mark(U341(z0, z1, z2)) U341(ok(z0), ok(z1), ok(z2)) -> ok(U341(z0, z1, z2)) U342(mark(z0), z1, z2) -> mark(U342(z0, z1, z2)) U342(ok(z0), ok(z1), ok(z2)) -> ok(U342(z0, z1, z2)) U343(mark(z0), z1, z2) -> mark(U343(z0, z1, z2)) U343(ok(z0), ok(z1), ok(z2)) -> ok(U343(z0, z1, z2)) U344(mark(z0), z1, z2) -> mark(U344(z0, z1, z2)) U344(ok(z0), ok(z1), ok(z2)) -> ok(U344(z0, z1, z2)) fst(mark(z0)) -> mark(fst(z0)) fst(ok(z0)) -> ok(fst(z0)) U41(mark(z0), z1, z2) -> mark(U41(z0, z1, z2)) U41(ok(z0), ok(z1), ok(z2)) -> ok(U41(z0, z1, z2)) U42(mark(z0), z1, z2) -> mark(U42(z0, z1, z2)) U42(ok(z0), ok(z1), ok(z2)) -> ok(U42(z0, z1, z2)) U43(mark(z0), z1, z2) -> mark(U43(z0, z1, z2)) U43(ok(z0), ok(z1), ok(z2)) -> ok(U43(z0, z1, z2)) U44(mark(z0), z1, z2) -> mark(U44(z0, z1, z2)) U44(ok(z0), ok(z1), ok(z2)) -> ok(U44(z0, z1, z2)) U45(mark(z0), z1) -> mark(U45(z0, z1)) U45(ok(z0), ok(z1)) -> ok(U45(z0, z1)) U46(mark(z0)) -> mark(U46(z0)) U46(ok(z0)) -> ok(U46(z0)) U51(mark(z0), z1, z2) -> mark(U51(z0, z1, z2)) U51(ok(z0), ok(z1), ok(z2)) -> ok(U51(z0, z1, z2)) U52(mark(z0), z1, z2) -> mark(U52(z0, z1, z2)) U52(ok(z0), ok(z1), ok(z2)) -> ok(U52(z0, z1, z2)) U53(mark(z0), z1, z2) -> mark(U53(z0, z1, z2)) U53(ok(z0), ok(z1), ok(z2)) -> ok(U53(z0, z1, z2)) U54(mark(z0), z1, z2) -> mark(U54(z0, z1, z2)) U54(ok(z0), ok(z1), ok(z2)) -> ok(U54(z0, z1, z2)) U55(mark(z0), z1) -> mark(U55(z0, z1)) U55(ok(z0), ok(z1)) -> ok(U55(z0, z1)) U56(mark(z0)) -> mark(U56(z0)) U56(ok(z0)) -> ok(U56(z0)) U61(mark(z0), z1) -> mark(U61(z0, z1)) U61(ok(z0), ok(z1)) -> ok(U61(z0, z1)) U62(mark(z0), z1) -> mark(U62(z0, z1)) U62(ok(z0), ok(z1)) -> ok(U62(z0, z1)) U63(mark(z0)) -> mark(U63(z0)) U63(ok(z0)) -> ok(U63(z0)) U71(mark(z0), z1) -> mark(U71(z0, z1)) U71(ok(z0), ok(z1)) -> ok(U71(z0, z1)) U72(mark(z0), z1) -> mark(U72(z0, z1)) U72(ok(z0), ok(z1)) -> ok(U72(z0, z1)) U73(mark(z0)) -> mark(U73(z0)) U73(ok(z0)) -> ok(U73(z0)) U81(mark(z0), z1) -> mark(U81(z0, z1)) U81(ok(z0), ok(z1)) -> ok(U81(z0, z1)) U82(mark(z0), z1) -> mark(U82(z0, z1)) U82(ok(z0), ok(z1)) -> ok(U82(z0, z1)) U83(mark(z0)) -> mark(U83(z0)) U83(ok(z0)) -> ok(U83(z0)) U91(mark(z0), z1) -> mark(U91(z0, z1)) U91(ok(z0), ok(z1)) -> ok(U91(z0, z1)) U92(mark(z0), z1) -> mark(U92(z0, z1)) U92(ok(z0), ok(z1)) -> ok(U92(z0, z1)) U93(mark(z0)) -> mark(U93(z0)) U93(ok(z0)) -> ok(U93(z0)) tail(mark(z0)) -> mark(tail(z0)) tail(ok(z0)) -> ok(tail(z0)) take(mark(z0), z1) -> mark(take(z0, z1)) take(z0, mark(z1)) -> mark(take(z0, z1)) take(ok(z0), ok(z1)) -> ok(take(z0, z1)) sel(mark(z0), z1) -> mark(sel(z0, z1)) sel(z0, mark(z1)) -> mark(sel(z0, z1)) sel(ok(z0), ok(z1)) -> ok(sel(z0, z1)) proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) isNaturalKind(ok(z0)) -> ok(isNaturalKind(z0)) isLNatKind(ok(z0)) -> ok(isLNatKind(z0)) isNatural(ok(z0)) -> ok(isNatural(z0)) isLNat(ok(z0)) -> ok(isLNat(z0)) isPLNatKind(ok(z0)) -> ok(isPLNatKind(z0)) isPLNat(ok(z0)) -> ok(isPLNat(z0)) top(mark(z0)) -> top(proper(z0)) top(ok(z0)) -> top(active(z0)) Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0)), PROPER(z0)) S tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0)), PROPER(z0)) K tuples:none Defined Rule Symbols: U101_3, U102_3, U103_3, U104_3, U105_2, U106_1, U11_3, U12_3, U111_2, U112_1, U13_3, U121_2, U122_1, U14_3, U131_1, snd_1, splitAt_2, U141_1, U151_1, U161_1, U171_2, U172_1, U181_2, U182_2, U183_1, U191_2, U192_2, U193_1, U201_3, U202_3, U203_3, U204_3, U205_2, U206_1, U21_3, U22_3, U211_1, U23_3, U221_1, U24_2, U231_2, U232_1, U241_3, U242_3, U243_3, U244_3, U245_2, U246_1, U251_3, U252_3, U253_3, U254_3, U255_2, U256_1, U261_2, U262_1, U271_2, U272_1, U281_2, U282_2, cons_2, natsFrom_1, s_1, U291_3, U292_3, U293_3, U294_3, head_1, afterNth_2, U301_3, U302_2, U303_2, U304_2, U31_3, U32_3, U311_2, U312_2, pair_2, U33_3, U321_4, U322_4, U323_4, U324_4, U325_4, U326_4, U327_2, U34_2, U331_3, U332_2, U333_2, U334_2, U341_3, U342_3, U343_3, U344_3, fst_1, U41_3, U42_3, U43_3, U44_3, U45_2, U46_1, U51_3, U52_3, U53_3, U54_3, U55_2, U56_1, U61_2, U62_2, U63_1, U71_2, U72_2, U73_1, U81_2, U82_2, U83_1, U91_2, U92_2, U93_1, tail_1, take_2, sel_2, proper_1, isNaturalKind_1, isLNatKind_1, isNatural_1, isLNat_1, isPLNatKind_1, isPLNat_1, top_1 Defined Pair Symbols: U101'_3, U102'_3, U103'_3, U104'_3, U105'_2, U106'_1, U11'_3, U12'_3, U111'_2, U112'_1, U13'_3, U121'_2, U122'_1, U14'_3, U131'_1, SND_1, SPLITAT_2, U141'_1, U151'_1, U161'_1, U171'_2, U172'_1, U181'_2, U182'_2, U183'_1, U191'_2, U192'_2, U193'_1, U201'_3, U202'_3, U203'_3, U204'_3, U205'_2, U206'_1, U21'_3, U22'_3, U211'_1, U23'_3, U221'_1, U24'_2, U231'_2, U232'_1, U241'_3, U242'_3, U243'_3, U244'_3, U245'_2, U246'_1, U251'_3, U252'_3, U253'_3, U254'_3, U255'_2, U256'_1, U261'_2, U262'_1, U271'_2, U272'_1, U281'_2, U282'_2, CONS_2, NATSFROM_1, S_1, U291'_3, U292'_3, U293'_3, U294'_3, HEAD_1, AFTERNTH_2, U301'_3, U302'_2, U303'_2, U304'_2, U31'_3, U32'_3, U311'_2, U312'_2, PAIR_2, U33'_3, U321'_4, U322'_4, U323'_4, U324'_4, U325'_4, U326'_4, U327'_2, U34'_2, U331'_3, U332'_2, U333'_2, U334'_2, U341'_3, U342'_3, U343'_3, U344'_3, FST_1, U41'_3, U42'_3, U43'_3, U44'_3, U45'_2, U46'_1, U51'_3, U52'_3, U53'_3, U54'_3, U55'_2, U56'_1, U61'_2, U62'_2, U63'_1, U71'_2, U72'_2, U73'_1, U81'_2, U82'_2, U83'_1, U91'_2, U92'_2, U93'_1, TAIL_1, TAKE_2, SEL_2, ISNATURALKIND_1, ISLNATKIND_1, ISNATURAL_1, ISLNAT_1, ISPLNATKIND_1, ISPLNAT_1, TOP_1 Compound Symbols: c_1, c1_1, c2_1, c3_1, c4_1, c5_1, c6_1, c7_1, c8_1, c9_1, c10_1, c11_1, c12_1, c13_1, c14_1, c15_1, c16_1, c17_1, c18_1, c19_1, c20_1, c21_1, c22_1, c23_1, c24_1, c25_1, c26_1, c27_1, c28_1, c29_1, c30_1, c31_1, c32_1, c33_1, c34_1, c35_1, c36_1, c37_1, c38_1, c39_1, c40_1, c41_1, c42_1, c43_1, c44_1, c45_1, c46_1, c47_1, c48_1, c49_1, c50_1, c51_1, c52_1, c53_1, c54_1, c55_1, c56_1, c57_1, c58_1, c59_1, c60_1, c61_1, c62_1, c63_1, c64_1, c65_1, c66_1, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c103_1, c104_1, c105_1, c106_1, c107_1, c108_1, c109_1, c110_1, c111_1, c112_1, c113_1, c114_1, c115_1, c116_1, c117_1, c118_1, c119_1, c120_1, c121_1, c122_1, c123_1, c124_1, c125_1, c126_1, c127_1, c128_1, c129_1, c130_1, c131_1, c132_1, c133_1, c134_1, c135_1, c136_1, c137_1, c138_1, c139_1, c140_1, c141_1, c142_1, c143_1, c144_1, c145_1, c146_1, c147_1, c148_1, c149_1, c150_1, c151_1, c152_1, c153_1, c154_1, c155_1, c156_1, c157_1, c158_1, c159_1, c160_1, c161_1, c162_1, c163_1, c164_1, c165_1, c166_1, c167_1, c168_1, c169_1, c170_1, c171_1, c172_1, c173_1, c174_1, c175_1, c176_1, c177_1, c178_1, c179_1, c180_1, c181_1, c182_1, c183_1, c184_1, c185_1, c186_1, c187_1, c188_1, c189_1, c190_1, c191_1, c192_1, c193_1, c194_1, c195_1, c196_1, c197_1, c198_1, c199_1, c200_1, c201_1, c202_1, c203_1, c204_1, c205_1, c206_1, c207_1, c208_1, c209_1, c210_1, c211_1, c212_1, c213_1, c214_1, c215_1, c216_1, c217_1, c218_1, c219_1, c220_1, c221_1, c222_1, c223_1, c224_1, c225_1, c226_1, c227_1, c228_1, c229_1, c230_1, c231_1, c232_1, c233_1, c234_1, c235_1, c236_1, c237_1, c238_1, c239_1, c240_1, c241_1, c242_1, c243_1, c244_1, c245_1, c246_1, c247_1, c248_1, c249_1, c250_1, c254_1, c255_1, c256_1, c257_1, c258_1, c259_1, c260_2 ---------------------------------------- (9) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (10) Obligation: Complexity Dependency Tuples Problem Rules: U101(mark(z0), z1, z2) -> mark(U101(z0, z1, z2)) U101(ok(z0), ok(z1), ok(z2)) -> ok(U101(z0, z1, z2)) U102(mark(z0), z1, z2) -> mark(U102(z0, z1, z2)) U102(ok(z0), ok(z1), ok(z2)) -> ok(U102(z0, z1, z2)) U103(mark(z0), z1, z2) -> mark(U103(z0, z1, z2)) U103(ok(z0), ok(z1), ok(z2)) -> ok(U103(z0, z1, z2)) U104(mark(z0), z1, z2) -> mark(U104(z0, z1, z2)) U104(ok(z0), ok(z1), ok(z2)) -> ok(U104(z0, z1, z2)) U105(mark(z0), z1) -> mark(U105(z0, z1)) U105(ok(z0), ok(z1)) -> ok(U105(z0, z1)) U106(mark(z0)) -> mark(U106(z0)) U106(ok(z0)) -> ok(U106(z0)) U11(mark(z0), z1, z2) -> mark(U11(z0, z1, z2)) U11(ok(z0), ok(z1), ok(z2)) -> ok(U11(z0, z1, z2)) U12(mark(z0), z1, z2) -> mark(U12(z0, z1, z2)) U12(ok(z0), ok(z1), ok(z2)) -> ok(U12(z0, z1, z2)) U111(mark(z0), z1) -> mark(U111(z0, z1)) U111(ok(z0), ok(z1)) -> ok(U111(z0, z1)) U112(mark(z0)) -> mark(U112(z0)) U112(ok(z0)) -> ok(U112(z0)) U13(mark(z0), z1, z2) -> mark(U13(z0, z1, z2)) U13(ok(z0), ok(z1), ok(z2)) -> ok(U13(z0, z1, z2)) U121(mark(z0), z1) -> mark(U121(z0, z1)) U121(ok(z0), ok(z1)) -> ok(U121(z0, z1)) U122(mark(z0)) -> mark(U122(z0)) U122(ok(z0)) -> ok(U122(z0)) U14(mark(z0), z1, z2) -> mark(U14(z0, z1, z2)) U14(ok(z0), ok(z1), ok(z2)) -> ok(U14(z0, z1, z2)) U131(mark(z0)) -> mark(U131(z0)) U131(ok(z0)) -> ok(U131(z0)) snd(mark(z0)) -> mark(snd(z0)) snd(ok(z0)) -> ok(snd(z0)) splitAt(mark(z0), z1) -> mark(splitAt(z0, z1)) splitAt(z0, mark(z1)) -> mark(splitAt(z0, z1)) splitAt(ok(z0), ok(z1)) -> ok(splitAt(z0, z1)) U141(mark(z0)) -> mark(U141(z0)) U141(ok(z0)) -> ok(U141(z0)) U151(mark(z0)) -> mark(U151(z0)) U151(ok(z0)) -> ok(U151(z0)) U161(mark(z0)) -> mark(U161(z0)) U161(ok(z0)) -> ok(U161(z0)) U171(mark(z0), z1) -> mark(U171(z0, z1)) U171(ok(z0), ok(z1)) -> ok(U171(z0, z1)) U172(mark(z0)) -> mark(U172(z0)) U172(ok(z0)) -> ok(U172(z0)) U181(mark(z0), z1) -> mark(U181(z0, z1)) U181(ok(z0), ok(z1)) -> ok(U181(z0, z1)) U182(mark(z0), z1) -> mark(U182(z0, z1)) U182(ok(z0), ok(z1)) -> ok(U182(z0, z1)) U183(mark(z0)) -> mark(U183(z0)) U183(ok(z0)) -> ok(U183(z0)) U191(mark(z0), z1) -> mark(U191(z0, z1)) U191(ok(z0), ok(z1)) -> ok(U191(z0, z1)) U192(mark(z0), z1) -> mark(U192(z0, z1)) U192(ok(z0), ok(z1)) -> ok(U192(z0, z1)) U193(mark(z0)) -> mark(U193(z0)) U193(ok(z0)) -> ok(U193(z0)) U201(mark(z0), z1, z2) -> mark(U201(z0, z1, z2)) U201(ok(z0), ok(z1), ok(z2)) -> ok(U201(z0, z1, z2)) U202(mark(z0), z1, z2) -> mark(U202(z0, z1, z2)) U202(ok(z0), ok(z1), ok(z2)) -> ok(U202(z0, z1, z2)) U203(mark(z0), z1, z2) -> mark(U203(z0, z1, z2)) U203(ok(z0), ok(z1), ok(z2)) -> ok(U203(z0, z1, z2)) U204(mark(z0), z1, z2) -> mark(U204(z0, z1, z2)) U204(ok(z0), ok(z1), ok(z2)) -> ok(U204(z0, z1, z2)) U205(mark(z0), z1) -> mark(U205(z0, z1)) U205(ok(z0), ok(z1)) -> ok(U205(z0, z1)) U206(mark(z0)) -> mark(U206(z0)) U206(ok(z0)) -> ok(U206(z0)) U21(mark(z0), z1, z2) -> mark(U21(z0, z1, z2)) U21(ok(z0), ok(z1), ok(z2)) -> ok(U21(z0, z1, z2)) U22(mark(z0), z1, z2) -> mark(U22(z0, z1, z2)) U22(ok(z0), ok(z1), ok(z2)) -> ok(U22(z0, z1, z2)) U211(mark(z0)) -> mark(U211(z0)) U211(ok(z0)) -> ok(U211(z0)) U23(mark(z0), z1, z2) -> mark(U23(z0, z1, z2)) U23(ok(z0), ok(z1), ok(z2)) -> ok(U23(z0, z1, z2)) U221(mark(z0)) -> mark(U221(z0)) U221(ok(z0)) -> ok(U221(z0)) U24(mark(z0), z1) -> mark(U24(z0, z1)) U24(ok(z0), ok(z1)) -> ok(U24(z0, z1)) U231(mark(z0), z1) -> mark(U231(z0, z1)) U231(ok(z0), ok(z1)) -> ok(U231(z0, z1)) U232(mark(z0)) -> mark(U232(z0)) U232(ok(z0)) -> ok(U232(z0)) U241(mark(z0), z1, z2) -> mark(U241(z0, z1, z2)) U241(ok(z0), ok(z1), ok(z2)) -> ok(U241(z0, z1, z2)) U242(mark(z0), z1, z2) -> mark(U242(z0, z1, z2)) U242(ok(z0), ok(z1), ok(z2)) -> ok(U242(z0, z1, z2)) U243(mark(z0), z1, z2) -> mark(U243(z0, z1, z2)) U243(ok(z0), ok(z1), ok(z2)) -> ok(U243(z0, z1, z2)) U244(mark(z0), z1, z2) -> mark(U244(z0, z1, z2)) U244(ok(z0), ok(z1), ok(z2)) -> ok(U244(z0, z1, z2)) U245(mark(z0), z1) -> mark(U245(z0, z1)) U245(ok(z0), ok(z1)) -> ok(U245(z0, z1)) U246(mark(z0)) -> mark(U246(z0)) U246(ok(z0)) -> ok(U246(z0)) U251(mark(z0), z1, z2) -> mark(U251(z0, z1, z2)) U251(ok(z0), ok(z1), ok(z2)) -> ok(U251(z0, z1, z2)) U252(mark(z0), z1, z2) -> mark(U252(z0, z1, z2)) U252(ok(z0), ok(z1), ok(z2)) -> ok(U252(z0, z1, z2)) U253(mark(z0), z1, z2) -> mark(U253(z0, z1, z2)) U253(ok(z0), ok(z1), ok(z2)) -> ok(U253(z0, z1, z2)) U254(mark(z0), z1, z2) -> mark(U254(z0, z1, z2)) U254(ok(z0), ok(z1), ok(z2)) -> ok(U254(z0, z1, z2)) U255(mark(z0), z1) -> mark(U255(z0, z1)) U255(ok(z0), ok(z1)) -> ok(U255(z0, z1)) U256(mark(z0)) -> mark(U256(z0)) U256(ok(z0)) -> ok(U256(z0)) U261(mark(z0), z1) -> mark(U261(z0, z1)) U261(ok(z0), ok(z1)) -> ok(U261(z0, z1)) U262(mark(z0)) -> mark(U262(z0)) U262(ok(z0)) -> ok(U262(z0)) U271(mark(z0), z1) -> mark(U271(z0, z1)) U271(ok(z0), ok(z1)) -> ok(U271(z0, z1)) U272(mark(z0)) -> mark(U272(z0)) U272(ok(z0)) -> ok(U272(z0)) U281(mark(z0), z1) -> mark(U281(z0, z1)) U281(ok(z0), ok(z1)) -> ok(U281(z0, z1)) U282(mark(z0), z1) -> mark(U282(z0, z1)) U282(ok(z0), ok(z1)) -> ok(U282(z0, z1)) cons(mark(z0), z1) -> mark(cons(z0, z1)) cons(ok(z0), ok(z1)) -> ok(cons(z0, z1)) natsFrom(mark(z0)) -> mark(natsFrom(z0)) natsFrom(ok(z0)) -> ok(natsFrom(z0)) s(mark(z0)) -> mark(s(z0)) s(ok(z0)) -> ok(s(z0)) U291(mark(z0), z1, z2) -> mark(U291(z0, z1, z2)) U291(ok(z0), ok(z1), ok(z2)) -> ok(U291(z0, z1, z2)) U292(mark(z0), z1, z2) -> mark(U292(z0, z1, z2)) U292(ok(z0), ok(z1), ok(z2)) -> ok(U292(z0, z1, z2)) U293(mark(z0), z1, z2) -> mark(U293(z0, z1, z2)) U293(ok(z0), ok(z1), ok(z2)) -> ok(U293(z0, z1, z2)) U294(mark(z0), z1, z2) -> mark(U294(z0, z1, z2)) U294(ok(z0), ok(z1), ok(z2)) -> ok(U294(z0, z1, z2)) head(mark(z0)) -> mark(head(z0)) head(ok(z0)) -> ok(head(z0)) afterNth(mark(z0), z1) -> mark(afterNth(z0, z1)) afterNth(z0, mark(z1)) -> mark(afterNth(z0, z1)) afterNth(ok(z0), ok(z1)) -> ok(afterNth(z0, z1)) U301(mark(z0), z1, z2) -> mark(U301(z0, z1, z2)) U301(ok(z0), ok(z1), ok(z2)) -> ok(U301(z0, z1, z2)) U302(mark(z0), z1) -> mark(U302(z0, z1)) U302(ok(z0), ok(z1)) -> ok(U302(z0, z1)) U303(mark(z0), z1) -> mark(U303(z0, z1)) U303(ok(z0), ok(z1)) -> ok(U303(z0, z1)) U304(mark(z0), z1) -> mark(U304(z0, z1)) U304(ok(z0), ok(z1)) -> ok(U304(z0, z1)) U31(mark(z0), z1, z2) -> mark(U31(z0, z1, z2)) U31(ok(z0), ok(z1), ok(z2)) -> ok(U31(z0, z1, z2)) U32(mark(z0), z1, z2) -> mark(U32(z0, z1, z2)) U32(ok(z0), ok(z1), ok(z2)) -> ok(U32(z0, z1, z2)) U311(mark(z0), z1) -> mark(U311(z0, z1)) U311(ok(z0), ok(z1)) -> ok(U311(z0, z1)) U312(mark(z0), z1) -> mark(U312(z0, z1)) U312(ok(z0), ok(z1)) -> ok(U312(z0, z1)) pair(mark(z0), z1) -> mark(pair(z0, z1)) pair(z0, mark(z1)) -> mark(pair(z0, z1)) pair(ok(z0), ok(z1)) -> ok(pair(z0, z1)) U33(mark(z0), z1, z2) -> mark(U33(z0, z1, z2)) U33(ok(z0), ok(z1), ok(z2)) -> ok(U33(z0, z1, z2)) U321(mark(z0), z1, z2, z3) -> mark(U321(z0, z1, z2, z3)) U321(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U321(z0, z1, z2, z3)) U322(mark(z0), z1, z2, z3) -> mark(U322(z0, z1, z2, z3)) U322(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U322(z0, z1, z2, z3)) U323(mark(z0), z1, z2, z3) -> mark(U323(z0, z1, z2, z3)) U323(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U323(z0, z1, z2, z3)) U324(mark(z0), z1, z2, z3) -> mark(U324(z0, z1, z2, z3)) U324(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U324(z0, z1, z2, z3)) U325(mark(z0), z1, z2, z3) -> mark(U325(z0, z1, z2, z3)) U325(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U325(z0, z1, z2, z3)) U326(mark(z0), z1, z2, z3) -> mark(U326(z0, z1, z2, z3)) U326(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U326(z0, z1, z2, z3)) U327(mark(z0), z1) -> mark(U327(z0, z1)) U327(ok(z0), ok(z1)) -> ok(U327(z0, z1)) U34(mark(z0), z1) -> mark(U34(z0, z1)) U34(ok(z0), ok(z1)) -> ok(U34(z0, z1)) U331(mark(z0), z1, z2) -> mark(U331(z0, z1, z2)) U331(ok(z0), ok(z1), ok(z2)) -> ok(U331(z0, z1, z2)) U332(mark(z0), z1) -> mark(U332(z0, z1)) U332(ok(z0), ok(z1)) -> ok(U332(z0, z1)) U333(mark(z0), z1) -> mark(U333(z0, z1)) U333(ok(z0), ok(z1)) -> ok(U333(z0, z1)) U334(mark(z0), z1) -> mark(U334(z0, z1)) U334(ok(z0), ok(z1)) -> ok(U334(z0, z1)) U341(mark(z0), z1, z2) -> mark(U341(z0, z1, z2)) U341(ok(z0), ok(z1), ok(z2)) -> ok(U341(z0, z1, z2)) U342(mark(z0), z1, z2) -> mark(U342(z0, z1, z2)) U342(ok(z0), ok(z1), ok(z2)) -> ok(U342(z0, z1, z2)) U343(mark(z0), z1, z2) -> mark(U343(z0, z1, z2)) U343(ok(z0), ok(z1), ok(z2)) -> ok(U343(z0, z1, z2)) U344(mark(z0), z1, z2) -> mark(U344(z0, z1, z2)) U344(ok(z0), ok(z1), ok(z2)) -> ok(U344(z0, z1, z2)) fst(mark(z0)) -> mark(fst(z0)) fst(ok(z0)) -> ok(fst(z0)) U41(mark(z0), z1, z2) -> mark(U41(z0, z1, z2)) U41(ok(z0), ok(z1), ok(z2)) -> ok(U41(z0, z1, z2)) U42(mark(z0), z1, z2) -> mark(U42(z0, z1, z2)) U42(ok(z0), ok(z1), ok(z2)) -> ok(U42(z0, z1, z2)) U43(mark(z0), z1, z2) -> mark(U43(z0, z1, z2)) U43(ok(z0), ok(z1), ok(z2)) -> ok(U43(z0, z1, z2)) U44(mark(z0), z1, z2) -> mark(U44(z0, z1, z2)) U44(ok(z0), ok(z1), ok(z2)) -> ok(U44(z0, z1, z2)) U45(mark(z0), z1) -> mark(U45(z0, z1)) U45(ok(z0), ok(z1)) -> ok(U45(z0, z1)) U46(mark(z0)) -> mark(U46(z0)) U46(ok(z0)) -> ok(U46(z0)) U51(mark(z0), z1, z2) -> mark(U51(z0, z1, z2)) U51(ok(z0), ok(z1), ok(z2)) -> ok(U51(z0, z1, z2)) U52(mark(z0), z1, z2) -> mark(U52(z0, z1, z2)) U52(ok(z0), ok(z1), ok(z2)) -> ok(U52(z0, z1, z2)) U53(mark(z0), z1, z2) -> mark(U53(z0, z1, z2)) U53(ok(z0), ok(z1), ok(z2)) -> ok(U53(z0, z1, z2)) U54(mark(z0), z1, z2) -> mark(U54(z0, z1, z2)) U54(ok(z0), ok(z1), ok(z2)) -> ok(U54(z0, z1, z2)) U55(mark(z0), z1) -> mark(U55(z0, z1)) U55(ok(z0), ok(z1)) -> ok(U55(z0, z1)) U56(mark(z0)) -> mark(U56(z0)) U56(ok(z0)) -> ok(U56(z0)) U61(mark(z0), z1) -> mark(U61(z0, z1)) U61(ok(z0), ok(z1)) -> ok(U61(z0, z1)) U62(mark(z0), z1) -> mark(U62(z0, z1)) U62(ok(z0), ok(z1)) -> ok(U62(z0, z1)) U63(mark(z0)) -> mark(U63(z0)) U63(ok(z0)) -> ok(U63(z0)) U71(mark(z0), z1) -> mark(U71(z0, z1)) U71(ok(z0), ok(z1)) -> ok(U71(z0, z1)) U72(mark(z0), z1) -> mark(U72(z0, z1)) U72(ok(z0), ok(z1)) -> ok(U72(z0, z1)) U73(mark(z0)) -> mark(U73(z0)) U73(ok(z0)) -> ok(U73(z0)) U81(mark(z0), z1) -> mark(U81(z0, z1)) U81(ok(z0), ok(z1)) -> ok(U81(z0, z1)) U82(mark(z0), z1) -> mark(U82(z0, z1)) U82(ok(z0), ok(z1)) -> ok(U82(z0, z1)) U83(mark(z0)) -> mark(U83(z0)) U83(ok(z0)) -> ok(U83(z0)) U91(mark(z0), z1) -> mark(U91(z0, z1)) U91(ok(z0), ok(z1)) -> ok(U91(z0, z1)) U92(mark(z0), z1) -> mark(U92(z0, z1)) U92(ok(z0), ok(z1)) -> ok(U92(z0, z1)) U93(mark(z0)) -> mark(U93(z0)) U93(ok(z0)) -> ok(U93(z0)) tail(mark(z0)) -> mark(tail(z0)) tail(ok(z0)) -> ok(tail(z0)) take(mark(z0), z1) -> mark(take(z0, z1)) take(z0, mark(z1)) -> mark(take(z0, z1)) take(ok(z0), ok(z1)) -> ok(take(z0, z1)) sel(mark(z0), z1) -> mark(sel(z0, z1)) sel(z0, mark(z1)) -> mark(sel(z0, z1)) sel(ok(z0), ok(z1)) -> ok(sel(z0, z1)) proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) isNaturalKind(ok(z0)) -> ok(isNaturalKind(z0)) isLNatKind(ok(z0)) -> ok(isLNatKind(z0)) isNatural(ok(z0)) -> ok(isNatural(z0)) isLNat(ok(z0)) -> ok(isLNat(z0)) isPLNatKind(ok(z0)) -> ok(isPLNatKind(z0)) isPLNat(ok(z0)) -> ok(isPLNat(z0)) top(mark(z0)) -> top(proper(z0)) top(ok(z0)) -> top(active(z0)) Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) S tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) K tuples:none Defined Rule Symbols: U101_3, U102_3, U103_3, U104_3, U105_2, U106_1, U11_3, U12_3, U111_2, U112_1, U13_3, U121_2, U122_1, U14_3, U131_1, snd_1, splitAt_2, U141_1, U151_1, U161_1, U171_2, U172_1, U181_2, U182_2, U183_1, U191_2, U192_2, U193_1, U201_3, U202_3, U203_3, U204_3, U205_2, U206_1, U21_3, U22_3, U211_1, U23_3, U221_1, U24_2, U231_2, U232_1, U241_3, U242_3, U243_3, U244_3, U245_2, U246_1, U251_3, U252_3, U253_3, U254_3, U255_2, U256_1, U261_2, U262_1, U271_2, U272_1, U281_2, U282_2, cons_2, natsFrom_1, s_1, U291_3, U292_3, U293_3, U294_3, head_1, afterNth_2, U301_3, U302_2, U303_2, U304_2, U31_3, U32_3, U311_2, U312_2, pair_2, U33_3, U321_4, U322_4, U323_4, U324_4, U325_4, U326_4, U327_2, U34_2, U331_3, U332_2, U333_2, U334_2, U341_3, U342_3, U343_3, U344_3, fst_1, U41_3, U42_3, U43_3, U44_3, U45_2, U46_1, U51_3, U52_3, U53_3, U54_3, U55_2, U56_1, U61_2, U62_2, U63_1, U71_2, U72_2, U73_1, U81_2, U82_2, U83_1, U91_2, U92_2, U93_1, tail_1, take_2, sel_2, proper_1, isNaturalKind_1, isLNatKind_1, isNatural_1, isLNat_1, isPLNatKind_1, isPLNat_1, top_1 Defined Pair Symbols: U101'_3, U102'_3, U103'_3, U104'_3, U105'_2, U106'_1, U11'_3, U12'_3, U111'_2, U112'_1, U13'_3, U121'_2, U122'_1, U14'_3, U131'_1, SND_1, SPLITAT_2, U141'_1, U151'_1, U161'_1, U171'_2, U172'_1, U181'_2, U182'_2, U183'_1, U191'_2, U192'_2, U193'_1, U201'_3, U202'_3, U203'_3, U204'_3, U205'_2, U206'_1, U21'_3, U22'_3, U211'_1, U23'_3, U221'_1, U24'_2, U231'_2, U232'_1, U241'_3, U242'_3, U243'_3, U244'_3, U245'_2, U246'_1, U251'_3, U252'_3, U253'_3, U254'_3, U255'_2, U256'_1, U261'_2, U262'_1, U271'_2, U272'_1, U281'_2, U282'_2, CONS_2, NATSFROM_1, S_1, U291'_3, U292'_3, U293'_3, U294'_3, HEAD_1, AFTERNTH_2, U301'_3, U302'_2, U303'_2, U304'_2, U31'_3, U32'_3, U311'_2, U312'_2, PAIR_2, U33'_3, U321'_4, U322'_4, U323'_4, U324'_4, U325'_4, U326'_4, U327'_2, U34'_2, U331'_3, U332'_2, U333'_2, U334'_2, U341'_3, U342'_3, U343'_3, U344'_3, FST_1, U41'_3, U42'_3, U43'_3, U44'_3, U45'_2, U46'_1, U51'_3, U52'_3, U53'_3, U54'_3, U55'_2, U56'_1, U61'_2, U62'_2, U63'_1, U71'_2, U72'_2, U73'_1, U81'_2, U82'_2, U83'_1, U91'_2, U92'_2, U93'_1, TAIL_1, TAKE_2, SEL_2, ISNATURALKIND_1, ISLNATKIND_1, ISNATURAL_1, ISLNAT_1, ISPLNATKIND_1, ISPLNAT_1, TOP_1 Compound Symbols: c_1, c1_1, c2_1, c3_1, c4_1, c5_1, c6_1, c7_1, c8_1, c9_1, c10_1, c11_1, c12_1, c13_1, c14_1, c15_1, c16_1, c17_1, c18_1, c19_1, c20_1, c21_1, c22_1, c23_1, c24_1, c25_1, c26_1, c27_1, c28_1, c29_1, c30_1, c31_1, c32_1, c33_1, c34_1, c35_1, c36_1, c37_1, c38_1, c39_1, c40_1, c41_1, c42_1, c43_1, c44_1, c45_1, c46_1, c47_1, c48_1, c49_1, c50_1, c51_1, c52_1, c53_1, c54_1, c55_1, c56_1, c57_1, c58_1, c59_1, c60_1, c61_1, c62_1, c63_1, c64_1, c65_1, c66_1, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c103_1, c104_1, c105_1, c106_1, c107_1, c108_1, c109_1, c110_1, c111_1, c112_1, c113_1, c114_1, c115_1, c116_1, c117_1, c118_1, c119_1, c120_1, c121_1, c122_1, c123_1, c124_1, c125_1, c126_1, c127_1, c128_1, c129_1, c130_1, c131_1, c132_1, c133_1, c134_1, c135_1, c136_1, c137_1, c138_1, c139_1, c140_1, c141_1, c142_1, c143_1, c144_1, c145_1, c146_1, c147_1, c148_1, c149_1, c150_1, c151_1, c152_1, c153_1, c154_1, c155_1, c156_1, c157_1, c158_1, c159_1, c160_1, c161_1, c162_1, c163_1, c164_1, c165_1, c166_1, c167_1, c168_1, c169_1, c170_1, c171_1, c172_1, c173_1, c174_1, c175_1, c176_1, c177_1, c178_1, c179_1, c180_1, c181_1, c182_1, c183_1, c184_1, c185_1, c186_1, c187_1, c188_1, c189_1, c190_1, c191_1, c192_1, c193_1, c194_1, c195_1, c196_1, c197_1, c198_1, c199_1, c200_1, c201_1, c202_1, c203_1, c204_1, c205_1, c206_1, c207_1, c208_1, c209_1, c210_1, c211_1, c212_1, c213_1, c214_1, c215_1, c216_1, c217_1, c218_1, c219_1, c220_1, c221_1, c222_1, c223_1, c224_1, c225_1, c226_1, c227_1, c228_1, c229_1, c230_1, c231_1, c232_1, c233_1, c234_1, c235_1, c236_1, c237_1, c238_1, c239_1, c240_1, c241_1, c242_1, c243_1, c244_1, c245_1, c246_1, c247_1, c248_1, c249_1, c250_1, c254_1, c255_1, c256_1, c257_1, c258_1, c259_1, c260_1 ---------------------------------------- (11) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: U101(mark(z0), z1, z2) -> mark(U101(z0, z1, z2)) U101(ok(z0), ok(z1), ok(z2)) -> ok(U101(z0, z1, z2)) U102(mark(z0), z1, z2) -> mark(U102(z0, z1, z2)) U102(ok(z0), ok(z1), ok(z2)) -> ok(U102(z0, z1, z2)) U103(mark(z0), z1, z2) -> mark(U103(z0, z1, z2)) U103(ok(z0), ok(z1), ok(z2)) -> ok(U103(z0, z1, z2)) U104(mark(z0), z1, z2) -> mark(U104(z0, z1, z2)) U104(ok(z0), ok(z1), ok(z2)) -> ok(U104(z0, z1, z2)) U105(mark(z0), z1) -> mark(U105(z0, z1)) U105(ok(z0), ok(z1)) -> ok(U105(z0, z1)) U106(mark(z0)) -> mark(U106(z0)) U106(ok(z0)) -> ok(U106(z0)) U11(mark(z0), z1, z2) -> mark(U11(z0, z1, z2)) U11(ok(z0), ok(z1), ok(z2)) -> ok(U11(z0, z1, z2)) U12(mark(z0), z1, z2) -> mark(U12(z0, z1, z2)) U12(ok(z0), ok(z1), ok(z2)) -> ok(U12(z0, z1, z2)) U111(mark(z0), z1) -> mark(U111(z0, z1)) U111(ok(z0), ok(z1)) -> ok(U111(z0, z1)) U112(mark(z0)) -> mark(U112(z0)) U112(ok(z0)) -> ok(U112(z0)) U13(mark(z0), z1, z2) -> mark(U13(z0, z1, z2)) U13(ok(z0), ok(z1), ok(z2)) -> ok(U13(z0, z1, z2)) U121(mark(z0), z1) -> mark(U121(z0, z1)) U121(ok(z0), ok(z1)) -> ok(U121(z0, z1)) U122(mark(z0)) -> mark(U122(z0)) U122(ok(z0)) -> ok(U122(z0)) U14(mark(z0), z1, z2) -> mark(U14(z0, z1, z2)) U14(ok(z0), ok(z1), ok(z2)) -> ok(U14(z0, z1, z2)) U131(mark(z0)) -> mark(U131(z0)) U131(ok(z0)) -> ok(U131(z0)) snd(mark(z0)) -> mark(snd(z0)) snd(ok(z0)) -> ok(snd(z0)) splitAt(mark(z0), z1) -> mark(splitAt(z0, z1)) splitAt(z0, mark(z1)) -> mark(splitAt(z0, z1)) splitAt(ok(z0), ok(z1)) -> ok(splitAt(z0, z1)) U141(mark(z0)) -> mark(U141(z0)) U141(ok(z0)) -> ok(U141(z0)) U151(mark(z0)) -> mark(U151(z0)) U151(ok(z0)) -> ok(U151(z0)) U161(mark(z0)) -> mark(U161(z0)) U161(ok(z0)) -> ok(U161(z0)) U171(mark(z0), z1) -> mark(U171(z0, z1)) U171(ok(z0), ok(z1)) -> ok(U171(z0, z1)) U172(mark(z0)) -> mark(U172(z0)) U172(ok(z0)) -> ok(U172(z0)) U181(mark(z0), z1) -> mark(U181(z0, z1)) U181(ok(z0), ok(z1)) -> ok(U181(z0, z1)) U182(mark(z0), z1) -> mark(U182(z0, z1)) U182(ok(z0), ok(z1)) -> ok(U182(z0, z1)) U183(mark(z0)) -> mark(U183(z0)) U183(ok(z0)) -> ok(U183(z0)) U191(mark(z0), z1) -> mark(U191(z0, z1)) U191(ok(z0), ok(z1)) -> ok(U191(z0, z1)) U192(mark(z0), z1) -> mark(U192(z0, z1)) U192(ok(z0), ok(z1)) -> ok(U192(z0, z1)) U193(mark(z0)) -> mark(U193(z0)) U193(ok(z0)) -> ok(U193(z0)) U201(mark(z0), z1, z2) -> mark(U201(z0, z1, z2)) U201(ok(z0), ok(z1), ok(z2)) -> ok(U201(z0, z1, z2)) U202(mark(z0), z1, z2) -> mark(U202(z0, z1, z2)) U202(ok(z0), ok(z1), ok(z2)) -> ok(U202(z0, z1, z2)) U203(mark(z0), z1, z2) -> mark(U203(z0, z1, z2)) U203(ok(z0), ok(z1), ok(z2)) -> ok(U203(z0, z1, z2)) U204(mark(z0), z1, z2) -> mark(U204(z0, z1, z2)) U204(ok(z0), ok(z1), ok(z2)) -> ok(U204(z0, z1, z2)) U205(mark(z0), z1) -> mark(U205(z0, z1)) U205(ok(z0), ok(z1)) -> ok(U205(z0, z1)) U206(mark(z0)) -> mark(U206(z0)) U206(ok(z0)) -> ok(U206(z0)) U21(mark(z0), z1, z2) -> mark(U21(z0, z1, z2)) U21(ok(z0), ok(z1), ok(z2)) -> ok(U21(z0, z1, z2)) U22(mark(z0), z1, z2) -> mark(U22(z0, z1, z2)) U22(ok(z0), ok(z1), ok(z2)) -> ok(U22(z0, z1, z2)) U211(mark(z0)) -> mark(U211(z0)) U211(ok(z0)) -> ok(U211(z0)) U23(mark(z0), z1, z2) -> mark(U23(z0, z1, z2)) U23(ok(z0), ok(z1), ok(z2)) -> ok(U23(z0, z1, z2)) U221(mark(z0)) -> mark(U221(z0)) U221(ok(z0)) -> ok(U221(z0)) U24(mark(z0), z1) -> mark(U24(z0, z1)) U24(ok(z0), ok(z1)) -> ok(U24(z0, z1)) U231(mark(z0), z1) -> mark(U231(z0, z1)) U231(ok(z0), ok(z1)) -> ok(U231(z0, z1)) U232(mark(z0)) -> mark(U232(z0)) U232(ok(z0)) -> ok(U232(z0)) U241(mark(z0), z1, z2) -> mark(U241(z0, z1, z2)) U241(ok(z0), ok(z1), ok(z2)) -> ok(U241(z0, z1, z2)) U242(mark(z0), z1, z2) -> mark(U242(z0, z1, z2)) U242(ok(z0), ok(z1), ok(z2)) -> ok(U242(z0, z1, z2)) U243(mark(z0), z1, z2) -> mark(U243(z0, z1, z2)) U243(ok(z0), ok(z1), ok(z2)) -> ok(U243(z0, z1, z2)) U244(mark(z0), z1, z2) -> mark(U244(z0, z1, z2)) U244(ok(z0), ok(z1), ok(z2)) -> ok(U244(z0, z1, z2)) U245(mark(z0), z1) -> mark(U245(z0, z1)) U245(ok(z0), ok(z1)) -> ok(U245(z0, z1)) U246(mark(z0)) -> mark(U246(z0)) U246(ok(z0)) -> ok(U246(z0)) U251(mark(z0), z1, z2) -> mark(U251(z0, z1, z2)) U251(ok(z0), ok(z1), ok(z2)) -> ok(U251(z0, z1, z2)) U252(mark(z0), z1, z2) -> mark(U252(z0, z1, z2)) U252(ok(z0), ok(z1), ok(z2)) -> ok(U252(z0, z1, z2)) U253(mark(z0), z1, z2) -> mark(U253(z0, z1, z2)) U253(ok(z0), ok(z1), ok(z2)) -> ok(U253(z0, z1, z2)) U254(mark(z0), z1, z2) -> mark(U254(z0, z1, z2)) U254(ok(z0), ok(z1), ok(z2)) -> ok(U254(z0, z1, z2)) U255(mark(z0), z1) -> mark(U255(z0, z1)) U255(ok(z0), ok(z1)) -> ok(U255(z0, z1)) U256(mark(z0)) -> mark(U256(z0)) U256(ok(z0)) -> ok(U256(z0)) U261(mark(z0), z1) -> mark(U261(z0, z1)) U261(ok(z0), ok(z1)) -> ok(U261(z0, z1)) U262(mark(z0)) -> mark(U262(z0)) U262(ok(z0)) -> ok(U262(z0)) U271(mark(z0), z1) -> mark(U271(z0, z1)) U271(ok(z0), ok(z1)) -> ok(U271(z0, z1)) U272(mark(z0)) -> mark(U272(z0)) U272(ok(z0)) -> ok(U272(z0)) U281(mark(z0), z1) -> mark(U281(z0, z1)) U281(ok(z0), ok(z1)) -> ok(U281(z0, z1)) U282(mark(z0), z1) -> mark(U282(z0, z1)) U282(ok(z0), ok(z1)) -> ok(U282(z0, z1)) cons(mark(z0), z1) -> mark(cons(z0, z1)) cons(ok(z0), ok(z1)) -> ok(cons(z0, z1)) natsFrom(mark(z0)) -> mark(natsFrom(z0)) natsFrom(ok(z0)) -> ok(natsFrom(z0)) s(mark(z0)) -> mark(s(z0)) s(ok(z0)) -> ok(s(z0)) U291(mark(z0), z1, z2) -> mark(U291(z0, z1, z2)) U291(ok(z0), ok(z1), ok(z2)) -> ok(U291(z0, z1, z2)) U292(mark(z0), z1, z2) -> mark(U292(z0, z1, z2)) U292(ok(z0), ok(z1), ok(z2)) -> ok(U292(z0, z1, z2)) U293(mark(z0), z1, z2) -> mark(U293(z0, z1, z2)) U293(ok(z0), ok(z1), ok(z2)) -> ok(U293(z0, z1, z2)) U294(mark(z0), z1, z2) -> mark(U294(z0, z1, z2)) U294(ok(z0), ok(z1), ok(z2)) -> ok(U294(z0, z1, z2)) head(mark(z0)) -> mark(head(z0)) head(ok(z0)) -> ok(head(z0)) afterNth(mark(z0), z1) -> mark(afterNth(z0, z1)) afterNth(z0, mark(z1)) -> mark(afterNth(z0, z1)) afterNth(ok(z0), ok(z1)) -> ok(afterNth(z0, z1)) U301(mark(z0), z1, z2) -> mark(U301(z0, z1, z2)) U301(ok(z0), ok(z1), ok(z2)) -> ok(U301(z0, z1, z2)) U302(mark(z0), z1) -> mark(U302(z0, z1)) U302(ok(z0), ok(z1)) -> ok(U302(z0, z1)) U303(mark(z0), z1) -> mark(U303(z0, z1)) U303(ok(z0), ok(z1)) -> ok(U303(z0, z1)) U304(mark(z0), z1) -> mark(U304(z0, z1)) U304(ok(z0), ok(z1)) -> ok(U304(z0, z1)) U31(mark(z0), z1, z2) -> mark(U31(z0, z1, z2)) U31(ok(z0), ok(z1), ok(z2)) -> ok(U31(z0, z1, z2)) U32(mark(z0), z1, z2) -> mark(U32(z0, z1, z2)) U32(ok(z0), ok(z1), ok(z2)) -> ok(U32(z0, z1, z2)) U311(mark(z0), z1) -> mark(U311(z0, z1)) U311(ok(z0), ok(z1)) -> ok(U311(z0, z1)) U312(mark(z0), z1) -> mark(U312(z0, z1)) U312(ok(z0), ok(z1)) -> ok(U312(z0, z1)) pair(mark(z0), z1) -> mark(pair(z0, z1)) pair(z0, mark(z1)) -> mark(pair(z0, z1)) pair(ok(z0), ok(z1)) -> ok(pair(z0, z1)) U33(mark(z0), z1, z2) -> mark(U33(z0, z1, z2)) U33(ok(z0), ok(z1), ok(z2)) -> ok(U33(z0, z1, z2)) U321(mark(z0), z1, z2, z3) -> mark(U321(z0, z1, z2, z3)) U321(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U321(z0, z1, z2, z3)) U322(mark(z0), z1, z2, z3) -> mark(U322(z0, z1, z2, z3)) U322(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U322(z0, z1, z2, z3)) U323(mark(z0), z1, z2, z3) -> mark(U323(z0, z1, z2, z3)) U323(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U323(z0, z1, z2, z3)) U324(mark(z0), z1, z2, z3) -> mark(U324(z0, z1, z2, z3)) U324(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U324(z0, z1, z2, z3)) U325(mark(z0), z1, z2, z3) -> mark(U325(z0, z1, z2, z3)) U325(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U325(z0, z1, z2, z3)) U326(mark(z0), z1, z2, z3) -> mark(U326(z0, z1, z2, z3)) U326(ok(z0), ok(z1), ok(z2), ok(z3)) -> ok(U326(z0, z1, z2, z3)) U327(mark(z0), z1) -> mark(U327(z0, z1)) U327(ok(z0), ok(z1)) -> ok(U327(z0, z1)) U34(mark(z0), z1) -> mark(U34(z0, z1)) U34(ok(z0), ok(z1)) -> ok(U34(z0, z1)) U331(mark(z0), z1, z2) -> mark(U331(z0, z1, z2)) U331(ok(z0), ok(z1), ok(z2)) -> ok(U331(z0, z1, z2)) U332(mark(z0), z1) -> mark(U332(z0, z1)) U332(ok(z0), ok(z1)) -> ok(U332(z0, z1)) U333(mark(z0), z1) -> mark(U333(z0, z1)) U333(ok(z0), ok(z1)) -> ok(U333(z0, z1)) U334(mark(z0), z1) -> mark(U334(z0, z1)) U334(ok(z0), ok(z1)) -> ok(U334(z0, z1)) U341(mark(z0), z1, z2) -> mark(U341(z0, z1, z2)) U341(ok(z0), ok(z1), ok(z2)) -> ok(U341(z0, z1, z2)) U342(mark(z0), z1, z2) -> mark(U342(z0, z1, z2)) U342(ok(z0), ok(z1), ok(z2)) -> ok(U342(z0, z1, z2)) U343(mark(z0), z1, z2) -> mark(U343(z0, z1, z2)) U343(ok(z0), ok(z1), ok(z2)) -> ok(U343(z0, z1, z2)) U344(mark(z0), z1, z2) -> mark(U344(z0, z1, z2)) U344(ok(z0), ok(z1), ok(z2)) -> ok(U344(z0, z1, z2)) fst(mark(z0)) -> mark(fst(z0)) fst(ok(z0)) -> ok(fst(z0)) U41(mark(z0), z1, z2) -> mark(U41(z0, z1, z2)) U41(ok(z0), ok(z1), ok(z2)) -> ok(U41(z0, z1, z2)) U42(mark(z0), z1, z2) -> mark(U42(z0, z1, z2)) U42(ok(z0), ok(z1), ok(z2)) -> ok(U42(z0, z1, z2)) U43(mark(z0), z1, z2) -> mark(U43(z0, z1, z2)) U43(ok(z0), ok(z1), ok(z2)) -> ok(U43(z0, z1, z2)) U44(mark(z0), z1, z2) -> mark(U44(z0, z1, z2)) U44(ok(z0), ok(z1), ok(z2)) -> ok(U44(z0, z1, z2)) U45(mark(z0), z1) -> mark(U45(z0, z1)) U45(ok(z0), ok(z1)) -> ok(U45(z0, z1)) U46(mark(z0)) -> mark(U46(z0)) U46(ok(z0)) -> ok(U46(z0)) U51(mark(z0), z1, z2) -> mark(U51(z0, z1, z2)) U51(ok(z0), ok(z1), ok(z2)) -> ok(U51(z0, z1, z2)) U52(mark(z0), z1, z2) -> mark(U52(z0, z1, z2)) U52(ok(z0), ok(z1), ok(z2)) -> ok(U52(z0, z1, z2)) U53(mark(z0), z1, z2) -> mark(U53(z0, z1, z2)) U53(ok(z0), ok(z1), ok(z2)) -> ok(U53(z0, z1, z2)) U54(mark(z0), z1, z2) -> mark(U54(z0, z1, z2)) U54(ok(z0), ok(z1), ok(z2)) -> ok(U54(z0, z1, z2)) U55(mark(z0), z1) -> mark(U55(z0, z1)) U55(ok(z0), ok(z1)) -> ok(U55(z0, z1)) U56(mark(z0)) -> mark(U56(z0)) U56(ok(z0)) -> ok(U56(z0)) U61(mark(z0), z1) -> mark(U61(z0, z1)) U61(ok(z0), ok(z1)) -> ok(U61(z0, z1)) U62(mark(z0), z1) -> mark(U62(z0, z1)) U62(ok(z0), ok(z1)) -> ok(U62(z0, z1)) U63(mark(z0)) -> mark(U63(z0)) U63(ok(z0)) -> ok(U63(z0)) U71(mark(z0), z1) -> mark(U71(z0, z1)) U71(ok(z0), ok(z1)) -> ok(U71(z0, z1)) U72(mark(z0), z1) -> mark(U72(z0, z1)) U72(ok(z0), ok(z1)) -> ok(U72(z0, z1)) U73(mark(z0)) -> mark(U73(z0)) U73(ok(z0)) -> ok(U73(z0)) U81(mark(z0), z1) -> mark(U81(z0, z1)) U81(ok(z0), ok(z1)) -> ok(U81(z0, z1)) U82(mark(z0), z1) -> mark(U82(z0, z1)) U82(ok(z0), ok(z1)) -> ok(U82(z0, z1)) U83(mark(z0)) -> mark(U83(z0)) U83(ok(z0)) -> ok(U83(z0)) U91(mark(z0), z1) -> mark(U91(z0, z1)) U91(ok(z0), ok(z1)) -> ok(U91(z0, z1)) U92(mark(z0), z1) -> mark(U92(z0, z1)) U92(ok(z0), ok(z1)) -> ok(U92(z0, z1)) U93(mark(z0)) -> mark(U93(z0)) U93(ok(z0)) -> ok(U93(z0)) tail(mark(z0)) -> mark(tail(z0)) tail(ok(z0)) -> ok(tail(z0)) take(mark(z0), z1) -> mark(take(z0, z1)) take(z0, mark(z1)) -> mark(take(z0, z1)) take(ok(z0), ok(z1)) -> ok(take(z0, z1)) sel(mark(z0), z1) -> mark(sel(z0, z1)) sel(z0, mark(z1)) -> mark(sel(z0, z1)) sel(ok(z0), ok(z1)) -> ok(sel(z0, z1)) isNaturalKind(ok(z0)) -> ok(isNaturalKind(z0)) isLNatKind(ok(z0)) -> ok(isLNatKind(z0)) isNatural(ok(z0)) -> ok(isNatural(z0)) isLNat(ok(z0)) -> ok(isLNat(z0)) isPLNatKind(ok(z0)) -> ok(isPLNatKind(z0)) isPLNat(ok(z0)) -> ok(isPLNat(z0)) top(mark(z0)) -> top(proper(z0)) top(ok(z0)) -> top(active(z0)) ---------------------------------------- (12) Obligation: Complexity Dependency Tuples Problem Rules: proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) S tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) K tuples:none Defined Rule Symbols: proper_1 Defined Pair Symbols: U101'_3, U102'_3, U103'_3, U104'_3, U105'_2, U106'_1, U11'_3, U12'_3, U111'_2, U112'_1, U13'_3, U121'_2, U122'_1, U14'_3, U131'_1, SND_1, SPLITAT_2, U141'_1, U151'_1, U161'_1, U171'_2, U172'_1, U181'_2, U182'_2, U183'_1, U191'_2, U192'_2, U193'_1, U201'_3, U202'_3, U203'_3, U204'_3, U205'_2, U206'_1, U21'_3, U22'_3, U211'_1, U23'_3, U221'_1, U24'_2, U231'_2, U232'_1, U241'_3, U242'_3, U243'_3, U244'_3, U245'_2, U246'_1, U251'_3, U252'_3, U253'_3, U254'_3, U255'_2, U256'_1, U261'_2, U262'_1, U271'_2, U272'_1, U281'_2, U282'_2, CONS_2, NATSFROM_1, S_1, U291'_3, U292'_3, U293'_3, U294'_3, HEAD_1, AFTERNTH_2, U301'_3, U302'_2, U303'_2, U304'_2, U31'_3, U32'_3, U311'_2, U312'_2, PAIR_2, U33'_3, U321'_4, U322'_4, U323'_4, U324'_4, U325'_4, U326'_4, U327'_2, U34'_2, U331'_3, U332'_2, U333'_2, U334'_2, U341'_3, U342'_3, U343'_3, U344'_3, FST_1, U41'_3, U42'_3, U43'_3, U44'_3, U45'_2, U46'_1, U51'_3, U52'_3, U53'_3, U54'_3, U55'_2, U56'_1, U61'_2, U62'_2, U63'_1, U71'_2, U72'_2, U73'_1, U81'_2, U82'_2, U83'_1, U91'_2, U92'_2, U93'_1, TAIL_1, TAKE_2, SEL_2, ISNATURALKIND_1, ISLNATKIND_1, ISNATURAL_1, ISLNAT_1, ISPLNATKIND_1, ISPLNAT_1, TOP_1 Compound Symbols: c_1, c1_1, c2_1, c3_1, c4_1, c5_1, c6_1, c7_1, c8_1, c9_1, c10_1, c11_1, c12_1, c13_1, c14_1, c15_1, c16_1, c17_1, c18_1, c19_1, c20_1, c21_1, c22_1, c23_1, c24_1, c25_1, c26_1, c27_1, c28_1, c29_1, c30_1, c31_1, c32_1, c33_1, c34_1, c35_1, c36_1, c37_1, c38_1, c39_1, c40_1, c41_1, c42_1, c43_1, c44_1, c45_1, c46_1, c47_1, c48_1, c49_1, c50_1, c51_1, c52_1, c53_1, c54_1, c55_1, c56_1, c57_1, c58_1, c59_1, c60_1, c61_1, c62_1, c63_1, c64_1, c65_1, c66_1, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c103_1, c104_1, c105_1, c106_1, c107_1, c108_1, c109_1, c110_1, c111_1, c112_1, c113_1, c114_1, c115_1, c116_1, c117_1, c118_1, c119_1, c120_1, c121_1, c122_1, c123_1, c124_1, c125_1, c126_1, c127_1, c128_1, c129_1, c130_1, c131_1, c132_1, c133_1, c134_1, c135_1, c136_1, c137_1, c138_1, c139_1, c140_1, c141_1, c142_1, c143_1, c144_1, c145_1, c146_1, c147_1, c148_1, c149_1, c150_1, c151_1, c152_1, c153_1, c154_1, c155_1, c156_1, c157_1, c158_1, c159_1, c160_1, c161_1, c162_1, c163_1, c164_1, c165_1, c166_1, c167_1, c168_1, c169_1, c170_1, c171_1, c172_1, c173_1, c174_1, c175_1, c176_1, c177_1, c178_1, c179_1, c180_1, c181_1, c182_1, c183_1, c184_1, c185_1, c186_1, c187_1, c188_1, c189_1, c190_1, c191_1, c192_1, c193_1, c194_1, c195_1, c196_1, c197_1, c198_1, c199_1, c200_1, c201_1, c202_1, c203_1, c204_1, c205_1, c206_1, c207_1, c208_1, c209_1, c210_1, c211_1, c212_1, c213_1, c214_1, c215_1, c216_1, c217_1, c218_1, c219_1, c220_1, c221_1, c222_1, c223_1, c224_1, c225_1, c226_1, c227_1, c228_1, c229_1, c230_1, c231_1, c232_1, c233_1, c234_1, c235_1, c236_1, c237_1, c238_1, c239_1, c240_1, c241_1, c242_1, c243_1, c244_1, c245_1, c246_1, c247_1, c248_1, c249_1, c250_1, c254_1, c255_1, c256_1, c257_1, c258_1, c259_1, c260_1 ---------------------------------------- (13) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) We considered the (Usable) Rules: proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) And the Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(0) = [1] POL(AFTERNTH(x_1, x_2)) = x_1 + x_2 POL(CONS(x_1, x_2)) = x_1 + x_2 POL(FST(x_1)) = x_1 POL(HEAD(x_1)) = x_1 POL(ISLNAT(x_1)) = x_1 POL(ISLNATKIND(x_1)) = x_1 POL(ISNATURAL(x_1)) = x_1 POL(ISNATURALKIND(x_1)) = x_1 POL(ISPLNAT(x_1)) = x_1 POL(ISPLNATKIND(x_1)) = x_1 POL(NATSFROM(x_1)) = x_1 POL(PAIR(x_1, x_2)) = x_1 + x_2 POL(S(x_1)) = x_1 POL(SEL(x_1, x_2)) = x_1 + x_2 POL(SND(x_1)) = x_1 POL(SPLITAT(x_1, x_2)) = x_1 + x_2 POL(TAIL(x_1)) = x_1 POL(TAKE(x_1, x_2)) = x_1 + x_2 POL(TOP(x_1)) = x_1 POL(U101'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U102'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U103'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U104'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U105'(x_1, x_2)) = x_1 + x_2 POL(U106'(x_1)) = x_1 POL(U11'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U111'(x_1, x_2)) = x_1 + x_2 POL(U112'(x_1)) = x_1 POL(U12'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U121'(x_1, x_2)) = x_1 + x_2 POL(U122'(x_1)) = x_1 POL(U13'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U131'(x_1)) = x_1 POL(U14'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U141'(x_1)) = x_1 POL(U151'(x_1)) = x_1 POL(U161'(x_1)) = x_1 POL(U171'(x_1, x_2)) = x_1 + x_2 POL(U172'(x_1)) = x_1 POL(U181'(x_1, x_2)) = x_1 + x_2 POL(U182'(x_1, x_2)) = x_1 + x_2 POL(U183'(x_1)) = x_1 POL(U191'(x_1, x_2)) = x_1 + x_2 POL(U192'(x_1, x_2)) = x_1 + x_2 POL(U193'(x_1)) = x_1 POL(U201'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U202'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U203'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U204'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U205'(x_1, x_2)) = x_1 + x_2 POL(U206'(x_1)) = x_1 POL(U21'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U211'(x_1)) = x_1 POL(U22'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U221'(x_1)) = x_1 POL(U23'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U231'(x_1, x_2)) = x_1 + x_2 POL(U232'(x_1)) = x_1 POL(U24'(x_1, x_2)) = x_1 + x_2 POL(U241'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U242'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U243'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U244'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U245'(x_1, x_2)) = x_1 + x_2 POL(U246'(x_1)) = x_1 POL(U251'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U252'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U253'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U254'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U255'(x_1, x_2)) = x_1 + x_2 POL(U256'(x_1)) = x_1 POL(U261'(x_1, x_2)) = x_1 + x_2 POL(U262'(x_1)) = x_1 POL(U271'(x_1, x_2)) = x_1 + x_2 POL(U272'(x_1)) = x_1 POL(U281'(x_1, x_2)) = x_1 + x_2 POL(U282'(x_1, x_2)) = x_1 + x_2 POL(U291'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U292'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U293'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U294'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U301'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U302'(x_1, x_2)) = x_1 + x_2 POL(U303'(x_1, x_2)) = x_1 + x_2 POL(U304'(x_1, x_2)) = x_1 + x_2 POL(U31'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U311'(x_1, x_2)) = x_1 + x_2 POL(U312'(x_1, x_2)) = x_1 + x_2 POL(U32'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U321'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U322'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U323'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U324'(x_1, x_2, x_3, x_4)) = x_1 + x_3 + x_4 POL(U325'(x_1, x_2, x_3, x_4)) = x_1 + x_3 + x_4 POL(U326'(x_1, x_2, x_3, x_4)) = x_1 + x_3 + x_4 POL(U327'(x_1, x_2)) = x_1 + x_2 POL(U33'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U331'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U332'(x_1, x_2)) = x_1 + x_2 POL(U333'(x_1, x_2)) = x_1 + x_2 POL(U334'(x_1, x_2)) = x_1 + x_2 POL(U34'(x_1, x_2)) = x_1 + x_2 POL(U341'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U342'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U343'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U344'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U41'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U42'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U43'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U44'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U45'(x_1, x_2)) = x_1 + x_2 POL(U46'(x_1)) = x_1 POL(U51'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U52'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U53'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U54'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U55'(x_1, x_2)) = x_1 + x_2 POL(U56'(x_1)) = x_1 POL(U61'(x_1, x_2)) = x_1 + x_2 POL(U62'(x_1, x_2)) = x_1 + x_2 POL(U63'(x_1)) = x_1 POL(U71'(x_1, x_2)) = x_1 + x_2 POL(U72'(x_1, x_2)) = x_1 + x_2 POL(U73'(x_1)) = x_1 POL(U81'(x_1, x_2)) = x_1 + x_2 POL(U82'(x_1, x_2)) = x_1 + x_2 POL(U83'(x_1)) = x_1 POL(U91'(x_1, x_2)) = x_1 + x_2 POL(U92'(x_1, x_2)) = x_1 + x_2 POL(U93'(x_1)) = x_1 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c100(x_1)) = x_1 POL(c101(x_1)) = x_1 POL(c102(x_1)) = x_1 POL(c103(x_1)) = x_1 POL(c104(x_1)) = x_1 POL(c105(x_1)) = x_1 POL(c106(x_1)) = x_1 POL(c107(x_1)) = x_1 POL(c108(x_1)) = x_1 POL(c109(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c110(x_1)) = x_1 POL(c111(x_1)) = x_1 POL(c112(x_1)) = x_1 POL(c113(x_1)) = x_1 POL(c114(x_1)) = x_1 POL(c115(x_1)) = x_1 POL(c116(x_1)) = x_1 POL(c117(x_1)) = x_1 POL(c118(x_1)) = x_1 POL(c119(x_1)) = x_1 POL(c12(x_1)) = x_1 POL(c120(x_1)) = x_1 POL(c121(x_1)) = x_1 POL(c122(x_1)) = x_1 POL(c123(x_1)) = x_1 POL(c124(x_1)) = x_1 POL(c125(x_1)) = x_1 POL(c126(x_1)) = x_1 POL(c127(x_1)) = x_1 POL(c128(x_1)) = x_1 POL(c129(x_1)) = x_1 POL(c13(x_1)) = x_1 POL(c130(x_1)) = x_1 POL(c131(x_1)) = x_1 POL(c132(x_1)) = x_1 POL(c133(x_1)) = x_1 POL(c134(x_1)) = x_1 POL(c135(x_1)) = x_1 POL(c136(x_1)) = x_1 POL(c137(x_1)) = x_1 POL(c138(x_1)) = x_1 POL(c139(x_1)) = x_1 POL(c14(x_1)) = x_1 POL(c140(x_1)) = x_1 POL(c141(x_1)) = x_1 POL(c142(x_1)) = x_1 POL(c143(x_1)) = x_1 POL(c144(x_1)) = x_1 POL(c145(x_1)) = x_1 POL(c146(x_1)) = x_1 POL(c147(x_1)) = x_1 POL(c148(x_1)) = x_1 POL(c149(x_1)) = x_1 POL(c15(x_1)) = x_1 POL(c150(x_1)) = x_1 POL(c151(x_1)) = x_1 POL(c152(x_1)) = x_1 POL(c153(x_1)) = x_1 POL(c154(x_1)) = x_1 POL(c155(x_1)) = x_1 POL(c156(x_1)) = x_1 POL(c157(x_1)) = x_1 POL(c158(x_1)) = x_1 POL(c159(x_1)) = x_1 POL(c16(x_1)) = x_1 POL(c160(x_1)) = x_1 POL(c161(x_1)) = x_1 POL(c162(x_1)) = x_1 POL(c163(x_1)) = x_1 POL(c164(x_1)) = x_1 POL(c165(x_1)) = x_1 POL(c166(x_1)) = x_1 POL(c167(x_1)) = x_1 POL(c168(x_1)) = x_1 POL(c169(x_1)) = x_1 POL(c17(x_1)) = x_1 POL(c170(x_1)) = x_1 POL(c171(x_1)) = x_1 POL(c172(x_1)) = x_1 POL(c173(x_1)) = x_1 POL(c174(x_1)) = x_1 POL(c175(x_1)) = x_1 POL(c176(x_1)) = x_1 POL(c177(x_1)) = x_1 POL(c178(x_1)) = x_1 POL(c179(x_1)) = x_1 POL(c18(x_1)) = x_1 POL(c180(x_1)) = x_1 POL(c181(x_1)) = x_1 POL(c182(x_1)) = x_1 POL(c183(x_1)) = x_1 POL(c184(x_1)) = x_1 POL(c185(x_1)) = x_1 POL(c186(x_1)) = x_1 POL(c187(x_1)) = x_1 POL(c188(x_1)) = x_1 POL(c189(x_1)) = x_1 POL(c19(x_1)) = x_1 POL(c190(x_1)) = x_1 POL(c191(x_1)) = x_1 POL(c192(x_1)) = x_1 POL(c193(x_1)) = x_1 POL(c194(x_1)) = x_1 POL(c195(x_1)) = x_1 POL(c196(x_1)) = x_1 POL(c197(x_1)) = x_1 POL(c198(x_1)) = x_1 POL(c199(x_1)) = x_1 POL(c2(x_1)) = x_1 POL(c20(x_1)) = x_1 POL(c200(x_1)) = x_1 POL(c201(x_1)) = x_1 POL(c202(x_1)) = x_1 POL(c203(x_1)) = x_1 POL(c204(x_1)) = x_1 POL(c205(x_1)) = x_1 POL(c206(x_1)) = x_1 POL(c207(x_1)) = x_1 POL(c208(x_1)) = x_1 POL(c209(x_1)) = x_1 POL(c21(x_1)) = x_1 POL(c210(x_1)) = x_1 POL(c211(x_1)) = x_1 POL(c212(x_1)) = x_1 POL(c213(x_1)) = x_1 POL(c214(x_1)) = x_1 POL(c215(x_1)) = x_1 POL(c216(x_1)) = x_1 POL(c217(x_1)) = x_1 POL(c218(x_1)) = x_1 POL(c219(x_1)) = x_1 POL(c22(x_1)) = x_1 POL(c220(x_1)) = x_1 POL(c221(x_1)) = x_1 POL(c222(x_1)) = x_1 POL(c223(x_1)) = x_1 POL(c224(x_1)) = x_1 POL(c225(x_1)) = x_1 POL(c226(x_1)) = x_1 POL(c227(x_1)) = x_1 POL(c228(x_1)) = x_1 POL(c229(x_1)) = x_1 POL(c23(x_1)) = x_1 POL(c230(x_1)) = x_1 POL(c231(x_1)) = x_1 POL(c232(x_1)) = x_1 POL(c233(x_1)) = x_1 POL(c234(x_1)) = x_1 POL(c235(x_1)) = x_1 POL(c236(x_1)) = x_1 POL(c237(x_1)) = x_1 POL(c238(x_1)) = x_1 POL(c239(x_1)) = x_1 POL(c24(x_1)) = x_1 POL(c240(x_1)) = x_1 POL(c241(x_1)) = x_1 POL(c242(x_1)) = x_1 POL(c243(x_1)) = x_1 POL(c244(x_1)) = x_1 POL(c245(x_1)) = x_1 POL(c246(x_1)) = x_1 POL(c247(x_1)) = x_1 POL(c248(x_1)) = x_1 POL(c249(x_1)) = x_1 POL(c25(x_1)) = x_1 POL(c250(x_1)) = x_1 POL(c254(x_1)) = x_1 POL(c255(x_1)) = x_1 POL(c256(x_1)) = x_1 POL(c257(x_1)) = x_1 POL(c258(x_1)) = x_1 POL(c259(x_1)) = x_1 POL(c26(x_1)) = x_1 POL(c260(x_1)) = x_1 POL(c27(x_1)) = x_1 POL(c28(x_1)) = x_1 POL(c29(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c30(x_1)) = x_1 POL(c31(x_1)) = x_1 POL(c32(x_1)) = x_1 POL(c33(x_1)) = x_1 POL(c34(x_1)) = x_1 POL(c35(x_1)) = x_1 POL(c36(x_1)) = x_1 POL(c37(x_1)) = x_1 POL(c38(x_1)) = x_1 POL(c39(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c40(x_1)) = x_1 POL(c41(x_1)) = x_1 POL(c42(x_1)) = x_1 POL(c43(x_1)) = x_1 POL(c44(x_1)) = x_1 POL(c45(x_1)) = x_1 POL(c46(x_1)) = x_1 POL(c47(x_1)) = x_1 POL(c48(x_1)) = x_1 POL(c49(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c50(x_1)) = x_1 POL(c51(x_1)) = x_1 POL(c52(x_1)) = x_1 POL(c53(x_1)) = x_1 POL(c54(x_1)) = x_1 POL(c55(x_1)) = x_1 POL(c56(x_1)) = x_1 POL(c57(x_1)) = x_1 POL(c58(x_1)) = x_1 POL(c59(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c60(x_1)) = x_1 POL(c61(x_1)) = x_1 POL(c62(x_1)) = x_1 POL(c63(x_1)) = x_1 POL(c64(x_1)) = x_1 POL(c65(x_1)) = x_1 POL(c66(x_1)) = x_1 POL(c67(x_1)) = x_1 POL(c68(x_1)) = x_1 POL(c69(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c70(x_1)) = x_1 POL(c71(x_1)) = x_1 POL(c72(x_1)) = x_1 POL(c73(x_1)) = x_1 POL(c74(x_1)) = x_1 POL(c75(x_1)) = x_1 POL(c76(x_1)) = x_1 POL(c77(x_1)) = x_1 POL(c78(x_1)) = x_1 POL(c79(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(c80(x_1)) = x_1 POL(c81(x_1)) = x_1 POL(c82(x_1)) = x_1 POL(c83(x_1)) = x_1 POL(c84(x_1)) = x_1 POL(c85(x_1)) = x_1 POL(c86(x_1)) = x_1 POL(c87(x_1)) = x_1 POL(c88(x_1)) = x_1 POL(c89(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(c90(x_1)) = x_1 POL(c91(x_1)) = x_1 POL(c92(x_1)) = x_1 POL(c93(x_1)) = x_1 POL(c94(x_1)) = x_1 POL(c95(x_1)) = x_1 POL(c96(x_1)) = x_1 POL(c97(x_1)) = x_1 POL(c98(x_1)) = x_1 POL(c99(x_1)) = x_1 POL(mark(x_1)) = [1] + x_1 POL(nil) = [1] POL(ok(x_1)) = [1] + x_1 POL(proper(x_1)) = [1] + x_1 POL(tt) = [1] ---------------------------------------- (14) Obligation: Complexity Dependency Tuples Problem Rules: proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) S tuples: TOP(mark(z0)) -> c260(TOP(proper(z0))) K tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) Defined Rule Symbols: proper_1 Defined Pair Symbols: U101'_3, U102'_3, U103'_3, U104'_3, U105'_2, U106'_1, U11'_3, U12'_3, U111'_2, U112'_1, U13'_3, U121'_2, U122'_1, U14'_3, U131'_1, SND_1, SPLITAT_2, U141'_1, U151'_1, U161'_1, U171'_2, U172'_1, U181'_2, U182'_2, U183'_1, U191'_2, U192'_2, U193'_1, U201'_3, U202'_3, U203'_3, U204'_3, U205'_2, U206'_1, U21'_3, U22'_3, U211'_1, U23'_3, U221'_1, U24'_2, U231'_2, U232'_1, U241'_3, U242'_3, U243'_3, U244'_3, U245'_2, U246'_1, U251'_3, U252'_3, U253'_3, U254'_3, U255'_2, U256'_1, U261'_2, U262'_1, U271'_2, U272'_1, U281'_2, U282'_2, CONS_2, NATSFROM_1, S_1, U291'_3, U292'_3, U293'_3, U294'_3, HEAD_1, AFTERNTH_2, U301'_3, U302'_2, U303'_2, U304'_2, U31'_3, U32'_3, U311'_2, U312'_2, PAIR_2, U33'_3, U321'_4, U322'_4, U323'_4, U324'_4, U325'_4, U326'_4, U327'_2, U34'_2, U331'_3, U332'_2, U333'_2, U334'_2, U341'_3, U342'_3, U343'_3, U344'_3, FST_1, U41'_3, U42'_3, U43'_3, U44'_3, U45'_2, U46'_1, U51'_3, U52'_3, U53'_3, U54'_3, U55'_2, U56'_1, U61'_2, U62'_2, U63'_1, U71'_2, U72'_2, U73'_1, U81'_2, U82'_2, U83'_1, U91'_2, U92'_2, U93'_1, TAIL_1, TAKE_2, SEL_2, ISNATURALKIND_1, ISLNATKIND_1, ISNATURAL_1, ISLNAT_1, ISPLNATKIND_1, ISPLNAT_1, TOP_1 Compound Symbols: c_1, c1_1, c2_1, c3_1, c4_1, c5_1, c6_1, c7_1, c8_1, c9_1, c10_1, c11_1, c12_1, c13_1, c14_1, c15_1, c16_1, c17_1, c18_1, c19_1, c20_1, c21_1, c22_1, c23_1, c24_1, c25_1, c26_1, c27_1, c28_1, c29_1, c30_1, c31_1, c32_1, c33_1, c34_1, c35_1, c36_1, c37_1, c38_1, c39_1, c40_1, c41_1, c42_1, c43_1, c44_1, c45_1, c46_1, c47_1, c48_1, c49_1, c50_1, c51_1, c52_1, c53_1, c54_1, c55_1, c56_1, c57_1, c58_1, c59_1, c60_1, c61_1, c62_1, c63_1, c64_1, c65_1, c66_1, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c103_1, c104_1, c105_1, c106_1, c107_1, c108_1, c109_1, c110_1, c111_1, c112_1, c113_1, c114_1, c115_1, c116_1, c117_1, c118_1, c119_1, c120_1, c121_1, c122_1, c123_1, c124_1, c125_1, c126_1, c127_1, c128_1, c129_1, c130_1, c131_1, c132_1, c133_1, c134_1, c135_1, c136_1, c137_1, c138_1, c139_1, c140_1, c141_1, c142_1, c143_1, c144_1, c145_1, c146_1, c147_1, c148_1, c149_1, c150_1, c151_1, c152_1, c153_1, c154_1, c155_1, c156_1, c157_1, c158_1, c159_1, c160_1, c161_1, c162_1, c163_1, c164_1, c165_1, c166_1, c167_1, c168_1, c169_1, c170_1, c171_1, c172_1, c173_1, c174_1, c175_1, c176_1, c177_1, c178_1, c179_1, c180_1, c181_1, c182_1, c183_1, c184_1, c185_1, c186_1, c187_1, c188_1, c189_1, c190_1, c191_1, c192_1, c193_1, c194_1, c195_1, c196_1, c197_1, c198_1, c199_1, c200_1, c201_1, c202_1, c203_1, c204_1, c205_1, c206_1, c207_1, c208_1, c209_1, c210_1, c211_1, c212_1, c213_1, c214_1, c215_1, c216_1, c217_1, c218_1, c219_1, c220_1, c221_1, c222_1, c223_1, c224_1, c225_1, c226_1, c227_1, c228_1, c229_1, c230_1, c231_1, c232_1, c233_1, c234_1, c235_1, c236_1, c237_1, c238_1, c239_1, c240_1, c241_1, c242_1, c243_1, c244_1, c245_1, c246_1, c247_1, c248_1, c249_1, c250_1, c254_1, c255_1, c256_1, c257_1, c258_1, c259_1, c260_1 ---------------------------------------- (15) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. TOP(mark(z0)) -> c260(TOP(proper(z0))) We considered the (Usable) Rules: proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) And the Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(0) = [1] POL(AFTERNTH(x_1, x_2)) = x_1 + x_2 POL(CONS(x_1, x_2)) = x_1 + x_2 POL(FST(x_1)) = x_1 POL(HEAD(x_1)) = x_1 POL(ISLNAT(x_1)) = x_1 POL(ISLNATKIND(x_1)) = x_1 POL(ISNATURAL(x_1)) = x_1 POL(ISNATURALKIND(x_1)) = x_1 POL(ISPLNAT(x_1)) = x_1 POL(ISPLNATKIND(x_1)) = x_1 POL(NATSFROM(x_1)) = x_1 POL(PAIR(x_1, x_2)) = x_1 + x_2 POL(S(x_1)) = x_1 POL(SEL(x_1, x_2)) = x_1 + x_2 POL(SND(x_1)) = x_1 POL(SPLITAT(x_1, x_2)) = x_1 + x_2 POL(TAIL(x_1)) = x_1 POL(TAKE(x_1, x_2)) = x_1 + x_2 POL(TOP(x_1)) = x_1 POL(U101'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U102'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U103'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U104'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U105'(x_1, x_2)) = x_1 + x_2 POL(U106'(x_1)) = x_1 POL(U11'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U111'(x_1, x_2)) = x_1 + x_2 POL(U112'(x_1)) = x_1 POL(U12'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U121'(x_1, x_2)) = x_1 + x_2 POL(U122'(x_1)) = x_1 POL(U13'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U131'(x_1)) = x_1 POL(U14'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U141'(x_1)) = x_1 POL(U151'(x_1)) = x_1 POL(U161'(x_1)) = x_1 POL(U171'(x_1, x_2)) = x_1 + x_2 POL(U172'(x_1)) = x_1 POL(U181'(x_1, x_2)) = x_1 + x_2 POL(U182'(x_1, x_2)) = x_1 + x_2 POL(U183'(x_1)) = x_1 POL(U191'(x_1, x_2)) = x_1 + x_2 POL(U192'(x_1, x_2)) = x_1 + x_2 POL(U193'(x_1)) = x_1 POL(U201'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U202'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U203'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U204'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U205'(x_1, x_2)) = x_1 + x_2 POL(U206'(x_1)) = x_1 POL(U21'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U211'(x_1)) = x_1 POL(U22'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U221'(x_1)) = x_1 POL(U23'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U231'(x_1, x_2)) = x_1 + x_2 POL(U232'(x_1)) = x_1 POL(U24'(x_1, x_2)) = x_1 + x_2 POL(U241'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U242'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U243'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U244'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U245'(x_1, x_2)) = x_1 + x_2 POL(U246'(x_1)) = x_1 POL(U251'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U252'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U253'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U254'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U255'(x_1, x_2)) = x_1 + x_2 POL(U256'(x_1)) = x_1 POL(U261'(x_1, x_2)) = x_1 + x_2 POL(U262'(x_1)) = x_1 POL(U271'(x_1, x_2)) = x_1 + x_2 POL(U272'(x_1)) = x_1 POL(U281'(x_1, x_2)) = x_1 + x_2 POL(U282'(x_1, x_2)) = x_1 + x_2 POL(U291'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U292'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U293'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U294'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U301'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U302'(x_1, x_2)) = x_1 + x_2 POL(U303'(x_1, x_2)) = x_1 + x_2 POL(U304'(x_1, x_2)) = x_1 + x_2 POL(U31'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U311'(x_1, x_2)) = x_1 + x_2 POL(U312'(x_1, x_2)) = x_1 + x_2 POL(U32'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U321'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U322'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U323'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U324'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U325'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U326'(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 POL(U327'(x_1, x_2)) = x_1 + x_2 POL(U33'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U331'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U332'(x_1, x_2)) = x_1 + x_2 POL(U333'(x_1, x_2)) = x_1 + x_2 POL(U334'(x_1, x_2)) = x_1 + x_2 POL(U34'(x_1, x_2)) = x_1 + x_2 POL(U341'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U342'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U343'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U344'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U41'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U42'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U43'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U44'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U45'(x_1, x_2)) = x_1 + x_2 POL(U46'(x_1)) = x_1 POL(U51'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U52'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U53'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U54'(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(U55'(x_1, x_2)) = x_1 + x_2 POL(U56'(x_1)) = x_1 POL(U61'(x_1, x_2)) = x_1 + x_2 POL(U62'(x_1, x_2)) = x_1 + x_2 POL(U63'(x_1)) = x_1 POL(U71'(x_1, x_2)) = x_1 + x_2 POL(U72'(x_1, x_2)) = x_1 + x_2 POL(U73'(x_1)) = x_1 POL(U81'(x_1, x_2)) = x_1 + x_2 POL(U82'(x_1, x_2)) = x_1 + x_2 POL(U83'(x_1)) = x_1 POL(U91'(x_1, x_2)) = x_1 + x_2 POL(U92'(x_1, x_2)) = x_1 + x_2 POL(U93'(x_1)) = x_1 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c100(x_1)) = x_1 POL(c101(x_1)) = x_1 POL(c102(x_1)) = x_1 POL(c103(x_1)) = x_1 POL(c104(x_1)) = x_1 POL(c105(x_1)) = x_1 POL(c106(x_1)) = x_1 POL(c107(x_1)) = x_1 POL(c108(x_1)) = x_1 POL(c109(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c110(x_1)) = x_1 POL(c111(x_1)) = x_1 POL(c112(x_1)) = x_1 POL(c113(x_1)) = x_1 POL(c114(x_1)) = x_1 POL(c115(x_1)) = x_1 POL(c116(x_1)) = x_1 POL(c117(x_1)) = x_1 POL(c118(x_1)) = x_1 POL(c119(x_1)) = x_1 POL(c12(x_1)) = x_1 POL(c120(x_1)) = x_1 POL(c121(x_1)) = x_1 POL(c122(x_1)) = x_1 POL(c123(x_1)) = x_1 POL(c124(x_1)) = x_1 POL(c125(x_1)) = x_1 POL(c126(x_1)) = x_1 POL(c127(x_1)) = x_1 POL(c128(x_1)) = x_1 POL(c129(x_1)) = x_1 POL(c13(x_1)) = x_1 POL(c130(x_1)) = x_1 POL(c131(x_1)) = x_1 POL(c132(x_1)) = x_1 POL(c133(x_1)) = x_1 POL(c134(x_1)) = x_1 POL(c135(x_1)) = x_1 POL(c136(x_1)) = x_1 POL(c137(x_1)) = x_1 POL(c138(x_1)) = x_1 POL(c139(x_1)) = x_1 POL(c14(x_1)) = x_1 POL(c140(x_1)) = x_1 POL(c141(x_1)) = x_1 POL(c142(x_1)) = x_1 POL(c143(x_1)) = x_1 POL(c144(x_1)) = x_1 POL(c145(x_1)) = x_1 POL(c146(x_1)) = x_1 POL(c147(x_1)) = x_1 POL(c148(x_1)) = x_1 POL(c149(x_1)) = x_1 POL(c15(x_1)) = x_1 POL(c150(x_1)) = x_1 POL(c151(x_1)) = x_1 POL(c152(x_1)) = x_1 POL(c153(x_1)) = x_1 POL(c154(x_1)) = x_1 POL(c155(x_1)) = x_1 POL(c156(x_1)) = x_1 POL(c157(x_1)) = x_1 POL(c158(x_1)) = x_1 POL(c159(x_1)) = x_1 POL(c16(x_1)) = x_1 POL(c160(x_1)) = x_1 POL(c161(x_1)) = x_1 POL(c162(x_1)) = x_1 POL(c163(x_1)) = x_1 POL(c164(x_1)) = x_1 POL(c165(x_1)) = x_1 POL(c166(x_1)) = x_1 POL(c167(x_1)) = x_1 POL(c168(x_1)) = x_1 POL(c169(x_1)) = x_1 POL(c17(x_1)) = x_1 POL(c170(x_1)) = x_1 POL(c171(x_1)) = x_1 POL(c172(x_1)) = x_1 POL(c173(x_1)) = x_1 POL(c174(x_1)) = x_1 POL(c175(x_1)) = x_1 POL(c176(x_1)) = x_1 POL(c177(x_1)) = x_1 POL(c178(x_1)) = x_1 POL(c179(x_1)) = x_1 POL(c18(x_1)) = x_1 POL(c180(x_1)) = x_1 POL(c181(x_1)) = x_1 POL(c182(x_1)) = x_1 POL(c183(x_1)) = x_1 POL(c184(x_1)) = x_1 POL(c185(x_1)) = x_1 POL(c186(x_1)) = x_1 POL(c187(x_1)) = x_1 POL(c188(x_1)) = x_1 POL(c189(x_1)) = x_1 POL(c19(x_1)) = x_1 POL(c190(x_1)) = x_1 POL(c191(x_1)) = x_1 POL(c192(x_1)) = x_1 POL(c193(x_1)) = x_1 POL(c194(x_1)) = x_1 POL(c195(x_1)) = x_1 POL(c196(x_1)) = x_1 POL(c197(x_1)) = x_1 POL(c198(x_1)) = x_1 POL(c199(x_1)) = x_1 POL(c2(x_1)) = x_1 POL(c20(x_1)) = x_1 POL(c200(x_1)) = x_1 POL(c201(x_1)) = x_1 POL(c202(x_1)) = x_1 POL(c203(x_1)) = x_1 POL(c204(x_1)) = x_1 POL(c205(x_1)) = x_1 POL(c206(x_1)) = x_1 POL(c207(x_1)) = x_1 POL(c208(x_1)) = x_1 POL(c209(x_1)) = x_1 POL(c21(x_1)) = x_1 POL(c210(x_1)) = x_1 POL(c211(x_1)) = x_1 POL(c212(x_1)) = x_1 POL(c213(x_1)) = x_1 POL(c214(x_1)) = x_1 POL(c215(x_1)) = x_1 POL(c216(x_1)) = x_1 POL(c217(x_1)) = x_1 POL(c218(x_1)) = x_1 POL(c219(x_1)) = x_1 POL(c22(x_1)) = x_1 POL(c220(x_1)) = x_1 POL(c221(x_1)) = x_1 POL(c222(x_1)) = x_1 POL(c223(x_1)) = x_1 POL(c224(x_1)) = x_1 POL(c225(x_1)) = x_1 POL(c226(x_1)) = x_1 POL(c227(x_1)) = x_1 POL(c228(x_1)) = x_1 POL(c229(x_1)) = x_1 POL(c23(x_1)) = x_1 POL(c230(x_1)) = x_1 POL(c231(x_1)) = x_1 POL(c232(x_1)) = x_1 POL(c233(x_1)) = x_1 POL(c234(x_1)) = x_1 POL(c235(x_1)) = x_1 POL(c236(x_1)) = x_1 POL(c237(x_1)) = x_1 POL(c238(x_1)) = x_1 POL(c239(x_1)) = x_1 POL(c24(x_1)) = x_1 POL(c240(x_1)) = x_1 POL(c241(x_1)) = x_1 POL(c242(x_1)) = x_1 POL(c243(x_1)) = x_1 POL(c244(x_1)) = x_1 POL(c245(x_1)) = x_1 POL(c246(x_1)) = x_1 POL(c247(x_1)) = x_1 POL(c248(x_1)) = x_1 POL(c249(x_1)) = x_1 POL(c25(x_1)) = x_1 POL(c250(x_1)) = x_1 POL(c254(x_1)) = x_1 POL(c255(x_1)) = x_1 POL(c256(x_1)) = x_1 POL(c257(x_1)) = x_1 POL(c258(x_1)) = x_1 POL(c259(x_1)) = x_1 POL(c26(x_1)) = x_1 POL(c260(x_1)) = x_1 POL(c27(x_1)) = x_1 POL(c28(x_1)) = x_1 POL(c29(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c30(x_1)) = x_1 POL(c31(x_1)) = x_1 POL(c32(x_1)) = x_1 POL(c33(x_1)) = x_1 POL(c34(x_1)) = x_1 POL(c35(x_1)) = x_1 POL(c36(x_1)) = x_1 POL(c37(x_1)) = x_1 POL(c38(x_1)) = x_1 POL(c39(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c40(x_1)) = x_1 POL(c41(x_1)) = x_1 POL(c42(x_1)) = x_1 POL(c43(x_1)) = x_1 POL(c44(x_1)) = x_1 POL(c45(x_1)) = x_1 POL(c46(x_1)) = x_1 POL(c47(x_1)) = x_1 POL(c48(x_1)) = x_1 POL(c49(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c50(x_1)) = x_1 POL(c51(x_1)) = x_1 POL(c52(x_1)) = x_1 POL(c53(x_1)) = x_1 POL(c54(x_1)) = x_1 POL(c55(x_1)) = x_1 POL(c56(x_1)) = x_1 POL(c57(x_1)) = x_1 POL(c58(x_1)) = x_1 POL(c59(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c60(x_1)) = x_1 POL(c61(x_1)) = x_1 POL(c62(x_1)) = x_1 POL(c63(x_1)) = x_1 POL(c64(x_1)) = x_1 POL(c65(x_1)) = x_1 POL(c66(x_1)) = x_1 POL(c67(x_1)) = x_1 POL(c68(x_1)) = x_1 POL(c69(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c70(x_1)) = x_1 POL(c71(x_1)) = x_1 POL(c72(x_1)) = x_1 POL(c73(x_1)) = x_1 POL(c74(x_1)) = x_1 POL(c75(x_1)) = x_1 POL(c76(x_1)) = x_1 POL(c77(x_1)) = x_1 POL(c78(x_1)) = x_1 POL(c79(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(c80(x_1)) = x_1 POL(c81(x_1)) = x_1 POL(c82(x_1)) = x_1 POL(c83(x_1)) = x_1 POL(c84(x_1)) = x_1 POL(c85(x_1)) = x_1 POL(c86(x_1)) = x_1 POL(c87(x_1)) = x_1 POL(c88(x_1)) = x_1 POL(c89(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(c90(x_1)) = x_1 POL(c91(x_1)) = x_1 POL(c92(x_1)) = x_1 POL(c93(x_1)) = x_1 POL(c94(x_1)) = x_1 POL(c95(x_1)) = x_1 POL(c96(x_1)) = x_1 POL(c97(x_1)) = x_1 POL(c98(x_1)) = x_1 POL(c99(x_1)) = x_1 POL(mark(x_1)) = [1] + x_1 POL(nil) = [1] POL(ok(x_1)) = x_1 POL(proper(x_1)) = x_1 POL(tt) = [1] ---------------------------------------- (16) Obligation: Complexity Dependency Tuples Problem Rules: proper(tt) -> ok(tt) proper(nil) -> ok(nil) proper(0) -> ok(0) Tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) S tuples:none K tuples: U101'(mark(z0), z1, z2) -> c(U101'(z0, z1, z2)) U101'(ok(z0), ok(z1), ok(z2)) -> c1(U101'(z0, z1, z2)) U102'(mark(z0), z1, z2) -> c2(U102'(z0, z1, z2)) U102'(ok(z0), ok(z1), ok(z2)) -> c3(U102'(z0, z1, z2)) U103'(mark(z0), z1, z2) -> c4(U103'(z0, z1, z2)) U103'(ok(z0), ok(z1), ok(z2)) -> c5(U103'(z0, z1, z2)) U104'(mark(z0), z1, z2) -> c6(U104'(z0, z1, z2)) U104'(ok(z0), ok(z1), ok(z2)) -> c7(U104'(z0, z1, z2)) U105'(mark(z0), z1) -> c8(U105'(z0, z1)) U105'(ok(z0), ok(z1)) -> c9(U105'(z0, z1)) U106'(mark(z0)) -> c10(U106'(z0)) U106'(ok(z0)) -> c11(U106'(z0)) U11'(mark(z0), z1, z2) -> c12(U11'(z0, z1, z2)) U11'(ok(z0), ok(z1), ok(z2)) -> c13(U11'(z0, z1, z2)) U12'(mark(z0), z1, z2) -> c14(U12'(z0, z1, z2)) U12'(ok(z0), ok(z1), ok(z2)) -> c15(U12'(z0, z1, z2)) U111'(mark(z0), z1) -> c16(U111'(z0, z1)) U111'(ok(z0), ok(z1)) -> c17(U111'(z0, z1)) U112'(mark(z0)) -> c18(U112'(z0)) U112'(ok(z0)) -> c19(U112'(z0)) U13'(mark(z0), z1, z2) -> c20(U13'(z0, z1, z2)) U13'(ok(z0), ok(z1), ok(z2)) -> c21(U13'(z0, z1, z2)) U121'(mark(z0), z1) -> c22(U121'(z0, z1)) U121'(ok(z0), ok(z1)) -> c23(U121'(z0, z1)) U122'(mark(z0)) -> c24(U122'(z0)) U122'(ok(z0)) -> c25(U122'(z0)) U14'(mark(z0), z1, z2) -> c26(U14'(z0, z1, z2)) U14'(ok(z0), ok(z1), ok(z2)) -> c27(U14'(z0, z1, z2)) U131'(mark(z0)) -> c28(U131'(z0)) U131'(ok(z0)) -> c29(U131'(z0)) SND(mark(z0)) -> c30(SND(z0)) SND(ok(z0)) -> c31(SND(z0)) SPLITAT(mark(z0), z1) -> c32(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c33(SPLITAT(z0, z1)) SPLITAT(ok(z0), ok(z1)) -> c34(SPLITAT(z0, z1)) U141'(mark(z0)) -> c35(U141'(z0)) U141'(ok(z0)) -> c36(U141'(z0)) U151'(mark(z0)) -> c37(U151'(z0)) U151'(ok(z0)) -> c38(U151'(z0)) U161'(mark(z0)) -> c39(U161'(z0)) U161'(ok(z0)) -> c40(U161'(z0)) U171'(mark(z0), z1) -> c41(U171'(z0, z1)) U171'(ok(z0), ok(z1)) -> c42(U171'(z0, z1)) U172'(mark(z0)) -> c43(U172'(z0)) U172'(ok(z0)) -> c44(U172'(z0)) U181'(mark(z0), z1) -> c45(U181'(z0, z1)) U181'(ok(z0), ok(z1)) -> c46(U181'(z0, z1)) U182'(mark(z0), z1) -> c47(U182'(z0, z1)) U182'(ok(z0), ok(z1)) -> c48(U182'(z0, z1)) U183'(mark(z0)) -> c49(U183'(z0)) U183'(ok(z0)) -> c50(U183'(z0)) U191'(mark(z0), z1) -> c51(U191'(z0, z1)) U191'(ok(z0), ok(z1)) -> c52(U191'(z0, z1)) U192'(mark(z0), z1) -> c53(U192'(z0, z1)) U192'(ok(z0), ok(z1)) -> c54(U192'(z0, z1)) U193'(mark(z0)) -> c55(U193'(z0)) U193'(ok(z0)) -> c56(U193'(z0)) U201'(mark(z0), z1, z2) -> c57(U201'(z0, z1, z2)) U201'(ok(z0), ok(z1), ok(z2)) -> c58(U201'(z0, z1, z2)) U202'(mark(z0), z1, z2) -> c59(U202'(z0, z1, z2)) U202'(ok(z0), ok(z1), ok(z2)) -> c60(U202'(z0, z1, z2)) U203'(mark(z0), z1, z2) -> c61(U203'(z0, z1, z2)) U203'(ok(z0), ok(z1), ok(z2)) -> c62(U203'(z0, z1, z2)) U204'(mark(z0), z1, z2) -> c63(U204'(z0, z1, z2)) U204'(ok(z0), ok(z1), ok(z2)) -> c64(U204'(z0, z1, z2)) U205'(mark(z0), z1) -> c65(U205'(z0, z1)) U205'(ok(z0), ok(z1)) -> c66(U205'(z0, z1)) U206'(mark(z0)) -> c67(U206'(z0)) U206'(ok(z0)) -> c68(U206'(z0)) U21'(mark(z0), z1, z2) -> c69(U21'(z0, z1, z2)) U21'(ok(z0), ok(z1), ok(z2)) -> c70(U21'(z0, z1, z2)) U22'(mark(z0), z1, z2) -> c71(U22'(z0, z1, z2)) U22'(ok(z0), ok(z1), ok(z2)) -> c72(U22'(z0, z1, z2)) U211'(mark(z0)) -> c73(U211'(z0)) U211'(ok(z0)) -> c74(U211'(z0)) U23'(mark(z0), z1, z2) -> c75(U23'(z0, z1, z2)) U23'(ok(z0), ok(z1), ok(z2)) -> c76(U23'(z0, z1, z2)) U221'(mark(z0)) -> c77(U221'(z0)) U221'(ok(z0)) -> c78(U221'(z0)) U24'(mark(z0), z1) -> c79(U24'(z0, z1)) U24'(ok(z0), ok(z1)) -> c80(U24'(z0, z1)) U231'(mark(z0), z1) -> c81(U231'(z0, z1)) U231'(ok(z0), ok(z1)) -> c82(U231'(z0, z1)) U232'(mark(z0)) -> c83(U232'(z0)) U232'(ok(z0)) -> c84(U232'(z0)) U241'(mark(z0), z1, z2) -> c85(U241'(z0, z1, z2)) U241'(ok(z0), ok(z1), ok(z2)) -> c86(U241'(z0, z1, z2)) U242'(mark(z0), z1, z2) -> c87(U242'(z0, z1, z2)) U242'(ok(z0), ok(z1), ok(z2)) -> c88(U242'(z0, z1, z2)) U243'(mark(z0), z1, z2) -> c89(U243'(z0, z1, z2)) U243'(ok(z0), ok(z1), ok(z2)) -> c90(U243'(z0, z1, z2)) U244'(mark(z0), z1, z2) -> c91(U244'(z0, z1, z2)) U244'(ok(z0), ok(z1), ok(z2)) -> c92(U244'(z0, z1, z2)) U245'(mark(z0), z1) -> c93(U245'(z0, z1)) U245'(ok(z0), ok(z1)) -> c94(U245'(z0, z1)) U246'(mark(z0)) -> c95(U246'(z0)) U246'(ok(z0)) -> c96(U246'(z0)) U251'(mark(z0), z1, z2) -> c97(U251'(z0, z1, z2)) U251'(ok(z0), ok(z1), ok(z2)) -> c98(U251'(z0, z1, z2)) U252'(mark(z0), z1, z2) -> c99(U252'(z0, z1, z2)) U252'(ok(z0), ok(z1), ok(z2)) -> c100(U252'(z0, z1, z2)) U253'(mark(z0), z1, z2) -> c101(U253'(z0, z1, z2)) U253'(ok(z0), ok(z1), ok(z2)) -> c102(U253'(z0, z1, z2)) U254'(mark(z0), z1, z2) -> c103(U254'(z0, z1, z2)) U254'(ok(z0), ok(z1), ok(z2)) -> c104(U254'(z0, z1, z2)) U255'(mark(z0), z1) -> c105(U255'(z0, z1)) U255'(ok(z0), ok(z1)) -> c106(U255'(z0, z1)) U256'(mark(z0)) -> c107(U256'(z0)) U256'(ok(z0)) -> c108(U256'(z0)) U261'(mark(z0), z1) -> c109(U261'(z0, z1)) U261'(ok(z0), ok(z1)) -> c110(U261'(z0, z1)) U262'(mark(z0)) -> c111(U262'(z0)) U262'(ok(z0)) -> c112(U262'(z0)) U271'(mark(z0), z1) -> c113(U271'(z0, z1)) U271'(ok(z0), ok(z1)) -> c114(U271'(z0, z1)) U272'(mark(z0)) -> c115(U272'(z0)) U272'(ok(z0)) -> c116(U272'(z0)) U281'(mark(z0), z1) -> c117(U281'(z0, z1)) U281'(ok(z0), ok(z1)) -> c118(U281'(z0, z1)) U282'(mark(z0), z1) -> c119(U282'(z0, z1)) U282'(ok(z0), ok(z1)) -> c120(U282'(z0, z1)) CONS(mark(z0), z1) -> c121(CONS(z0, z1)) CONS(ok(z0), ok(z1)) -> c122(CONS(z0, z1)) NATSFROM(mark(z0)) -> c123(NATSFROM(z0)) NATSFROM(ok(z0)) -> c124(NATSFROM(z0)) S(mark(z0)) -> c125(S(z0)) S(ok(z0)) -> c126(S(z0)) U291'(mark(z0), z1, z2) -> c127(U291'(z0, z1, z2)) U291'(ok(z0), ok(z1), ok(z2)) -> c128(U291'(z0, z1, z2)) U292'(mark(z0), z1, z2) -> c129(U292'(z0, z1, z2)) U292'(ok(z0), ok(z1), ok(z2)) -> c130(U292'(z0, z1, z2)) U293'(mark(z0), z1, z2) -> c131(U293'(z0, z1, z2)) U293'(ok(z0), ok(z1), ok(z2)) -> c132(U293'(z0, z1, z2)) U294'(mark(z0), z1, z2) -> c133(U294'(z0, z1, z2)) U294'(ok(z0), ok(z1), ok(z2)) -> c134(U294'(z0, z1, z2)) HEAD(mark(z0)) -> c135(HEAD(z0)) HEAD(ok(z0)) -> c136(HEAD(z0)) AFTERNTH(mark(z0), z1) -> c137(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c138(AFTERNTH(z0, z1)) AFTERNTH(ok(z0), ok(z1)) -> c139(AFTERNTH(z0, z1)) U301'(mark(z0), z1, z2) -> c140(U301'(z0, z1, z2)) U301'(ok(z0), ok(z1), ok(z2)) -> c141(U301'(z0, z1, z2)) U302'(mark(z0), z1) -> c142(U302'(z0, z1)) U302'(ok(z0), ok(z1)) -> c143(U302'(z0, z1)) U303'(mark(z0), z1) -> c144(U303'(z0, z1)) U303'(ok(z0), ok(z1)) -> c145(U303'(z0, z1)) U304'(mark(z0), z1) -> c146(U304'(z0, z1)) U304'(ok(z0), ok(z1)) -> c147(U304'(z0, z1)) U31'(mark(z0), z1, z2) -> c148(U31'(z0, z1, z2)) U31'(ok(z0), ok(z1), ok(z2)) -> c149(U31'(z0, z1, z2)) U32'(mark(z0), z1, z2) -> c150(U32'(z0, z1, z2)) U32'(ok(z0), ok(z1), ok(z2)) -> c151(U32'(z0, z1, z2)) U311'(mark(z0), z1) -> c152(U311'(z0, z1)) U311'(ok(z0), ok(z1)) -> c153(U311'(z0, z1)) U312'(mark(z0), z1) -> c154(U312'(z0, z1)) U312'(ok(z0), ok(z1)) -> c155(U312'(z0, z1)) PAIR(mark(z0), z1) -> c156(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c157(PAIR(z0, z1)) PAIR(ok(z0), ok(z1)) -> c158(PAIR(z0, z1)) U33'(mark(z0), z1, z2) -> c159(U33'(z0, z1, z2)) U33'(ok(z0), ok(z1), ok(z2)) -> c160(U33'(z0, z1, z2)) U321'(mark(z0), z1, z2, z3) -> c161(U321'(z0, z1, z2, z3)) U321'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c162(U321'(z0, z1, z2, z3)) U322'(mark(z0), z1, z2, z3) -> c163(U322'(z0, z1, z2, z3)) U322'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c164(U322'(z0, z1, z2, z3)) U323'(mark(z0), z1, z2, z3) -> c165(U323'(z0, z1, z2, z3)) U323'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c166(U323'(z0, z1, z2, z3)) U324'(mark(z0), z1, z2, z3) -> c167(U324'(z0, z1, z2, z3)) U324'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c168(U324'(z0, z1, z2, z3)) U325'(mark(z0), z1, z2, z3) -> c169(U325'(z0, z1, z2, z3)) U325'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c170(U325'(z0, z1, z2, z3)) U326'(mark(z0), z1, z2, z3) -> c171(U326'(z0, z1, z2, z3)) U326'(ok(z0), ok(z1), ok(z2), ok(z3)) -> c172(U326'(z0, z1, z2, z3)) U327'(mark(z0), z1) -> c173(U327'(z0, z1)) U327'(ok(z0), ok(z1)) -> c174(U327'(z0, z1)) U34'(mark(z0), z1) -> c175(U34'(z0, z1)) U34'(ok(z0), ok(z1)) -> c176(U34'(z0, z1)) U331'(mark(z0), z1, z2) -> c177(U331'(z0, z1, z2)) U331'(ok(z0), ok(z1), ok(z2)) -> c178(U331'(z0, z1, z2)) U332'(mark(z0), z1) -> c179(U332'(z0, z1)) U332'(ok(z0), ok(z1)) -> c180(U332'(z0, z1)) U333'(mark(z0), z1) -> c181(U333'(z0, z1)) U333'(ok(z0), ok(z1)) -> c182(U333'(z0, z1)) U334'(mark(z0), z1) -> c183(U334'(z0, z1)) U334'(ok(z0), ok(z1)) -> c184(U334'(z0, z1)) U341'(mark(z0), z1, z2) -> c185(U341'(z0, z1, z2)) U341'(ok(z0), ok(z1), ok(z2)) -> c186(U341'(z0, z1, z2)) U342'(mark(z0), z1, z2) -> c187(U342'(z0, z1, z2)) U342'(ok(z0), ok(z1), ok(z2)) -> c188(U342'(z0, z1, z2)) U343'(mark(z0), z1, z2) -> c189(U343'(z0, z1, z2)) U343'(ok(z0), ok(z1), ok(z2)) -> c190(U343'(z0, z1, z2)) U344'(mark(z0), z1, z2) -> c191(U344'(z0, z1, z2)) U344'(ok(z0), ok(z1), ok(z2)) -> c192(U344'(z0, z1, z2)) FST(mark(z0)) -> c193(FST(z0)) FST(ok(z0)) -> c194(FST(z0)) U41'(mark(z0), z1, z2) -> c195(U41'(z0, z1, z2)) U41'(ok(z0), ok(z1), ok(z2)) -> c196(U41'(z0, z1, z2)) U42'(mark(z0), z1, z2) -> c197(U42'(z0, z1, z2)) U42'(ok(z0), ok(z1), ok(z2)) -> c198(U42'(z0, z1, z2)) U43'(mark(z0), z1, z2) -> c199(U43'(z0, z1, z2)) U43'(ok(z0), ok(z1), ok(z2)) -> c200(U43'(z0, z1, z2)) U44'(mark(z0), z1, z2) -> c201(U44'(z0, z1, z2)) U44'(ok(z0), ok(z1), ok(z2)) -> c202(U44'(z0, z1, z2)) U45'(mark(z0), z1) -> c203(U45'(z0, z1)) U45'(ok(z0), ok(z1)) -> c204(U45'(z0, z1)) U46'(mark(z0)) -> c205(U46'(z0)) U46'(ok(z0)) -> c206(U46'(z0)) U51'(mark(z0), z1, z2) -> c207(U51'(z0, z1, z2)) U51'(ok(z0), ok(z1), ok(z2)) -> c208(U51'(z0, z1, z2)) U52'(mark(z0), z1, z2) -> c209(U52'(z0, z1, z2)) U52'(ok(z0), ok(z1), ok(z2)) -> c210(U52'(z0, z1, z2)) U53'(mark(z0), z1, z2) -> c211(U53'(z0, z1, z2)) U53'(ok(z0), ok(z1), ok(z2)) -> c212(U53'(z0, z1, z2)) U54'(mark(z0), z1, z2) -> c213(U54'(z0, z1, z2)) U54'(ok(z0), ok(z1), ok(z2)) -> c214(U54'(z0, z1, z2)) U55'(mark(z0), z1) -> c215(U55'(z0, z1)) U55'(ok(z0), ok(z1)) -> c216(U55'(z0, z1)) U56'(mark(z0)) -> c217(U56'(z0)) U56'(ok(z0)) -> c218(U56'(z0)) U61'(mark(z0), z1) -> c219(U61'(z0, z1)) U61'(ok(z0), ok(z1)) -> c220(U61'(z0, z1)) U62'(mark(z0), z1) -> c221(U62'(z0, z1)) U62'(ok(z0), ok(z1)) -> c222(U62'(z0, z1)) U63'(mark(z0)) -> c223(U63'(z0)) U63'(ok(z0)) -> c224(U63'(z0)) U71'(mark(z0), z1) -> c225(U71'(z0, z1)) U71'(ok(z0), ok(z1)) -> c226(U71'(z0, z1)) U72'(mark(z0), z1) -> c227(U72'(z0, z1)) U72'(ok(z0), ok(z1)) -> c228(U72'(z0, z1)) U73'(mark(z0)) -> c229(U73'(z0)) U73'(ok(z0)) -> c230(U73'(z0)) U81'(mark(z0), z1) -> c231(U81'(z0, z1)) U81'(ok(z0), ok(z1)) -> c232(U81'(z0, z1)) U82'(mark(z0), z1) -> c233(U82'(z0, z1)) U82'(ok(z0), ok(z1)) -> c234(U82'(z0, z1)) U83'(mark(z0)) -> c235(U83'(z0)) U83'(ok(z0)) -> c236(U83'(z0)) U91'(mark(z0), z1) -> c237(U91'(z0, z1)) U91'(ok(z0), ok(z1)) -> c238(U91'(z0, z1)) U92'(mark(z0), z1) -> c239(U92'(z0, z1)) U92'(ok(z0), ok(z1)) -> c240(U92'(z0, z1)) U93'(mark(z0)) -> c241(U93'(z0)) U93'(ok(z0)) -> c242(U93'(z0)) TAIL(mark(z0)) -> c243(TAIL(z0)) TAIL(ok(z0)) -> c244(TAIL(z0)) TAKE(mark(z0), z1) -> c245(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c246(TAKE(z0, z1)) TAKE(ok(z0), ok(z1)) -> c247(TAKE(z0, z1)) SEL(mark(z0), z1) -> c248(SEL(z0, z1)) SEL(z0, mark(z1)) -> c249(SEL(z0, z1)) SEL(ok(z0), ok(z1)) -> c250(SEL(z0, z1)) ISNATURALKIND(ok(z0)) -> c254(ISNATURALKIND(z0)) ISLNATKIND(ok(z0)) -> c255(ISLNATKIND(z0)) ISNATURAL(ok(z0)) -> c256(ISNATURAL(z0)) ISLNAT(ok(z0)) -> c257(ISLNAT(z0)) ISPLNATKIND(ok(z0)) -> c258(ISPLNATKIND(z0)) ISPLNAT(ok(z0)) -> c259(ISPLNAT(z0)) TOP(mark(z0)) -> c260(TOP(proper(z0))) Defined Rule Symbols: proper_1 Defined Pair Symbols: U101'_3, U102'_3, U103'_3, U104'_3, U105'_2, U106'_1, U11'_3, U12'_3, U111'_2, U112'_1, U13'_3, U121'_2, U122'_1, U14'_3, U131'_1, SND_1, SPLITAT_2, U141'_1, U151'_1, U161'_1, U171'_2, U172'_1, U181'_2, U182'_2, U183'_1, U191'_2, U192'_2, U193'_1, U201'_3, U202'_3, U203'_3, U204'_3, U205'_2, U206'_1, U21'_3, U22'_3, U211'_1, U23'_3, U221'_1, U24'_2, U231'_2, U232'_1, U241'_3, U242'_3, U243'_3, U244'_3, U245'_2, U246'_1, U251'_3, U252'_3, U253'_3, U254'_3, U255'_2, U256'_1, U261'_2, U262'_1, U271'_2, U272'_1, U281'_2, U282'_2, CONS_2, NATSFROM_1, S_1, U291'_3, U292'_3, U293'_3, U294'_3, HEAD_1, AFTERNTH_2, U301'_3, U302'_2, U303'_2, U304'_2, U31'_3, U32'_3, U311'_2, U312'_2, PAIR_2, U33'_3, U321'_4, U322'_4, U323'_4, U324'_4, U325'_4, U326'_4, U327'_2, U34'_2, U331'_3, U332'_2, U333'_2, U334'_2, U341'_3, U342'_3, U343'_3, U344'_3, FST_1, U41'_3, U42'_3, U43'_3, U44'_3, U45'_2, U46'_1, U51'_3, U52'_3, U53'_3, U54'_3, U55'_2, U56'_1, U61'_2, U62'_2, U63'_1, U71'_2, U72'_2, U73'_1, U81'_2, U82'_2, U83'_1, U91'_2, U92'_2, U93'_1, TAIL_1, TAKE_2, SEL_2, ISNATURALKIND_1, ISLNATKIND_1, ISNATURAL_1, ISLNAT_1, ISPLNATKIND_1, ISPLNAT_1, TOP_1 Compound Symbols: c_1, c1_1, c2_1, c3_1, c4_1, c5_1, c6_1, c7_1, c8_1, c9_1, c10_1, c11_1, c12_1, c13_1, c14_1, c15_1, c16_1, c17_1, c18_1, c19_1, c20_1, c21_1, c22_1, c23_1, c24_1, c25_1, c26_1, c27_1, c28_1, c29_1, c30_1, c31_1, c32_1, c33_1, c34_1, c35_1, c36_1, c37_1, c38_1, c39_1, c40_1, c41_1, c42_1, c43_1, c44_1, c45_1, c46_1, c47_1, c48_1, c49_1, c50_1, c51_1, c52_1, c53_1, c54_1, c55_1, c56_1, c57_1, c58_1, c59_1, c60_1, c61_1, c62_1, c63_1, c64_1, c65_1, c66_1, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c103_1, c104_1, c105_1, c106_1, c107_1, c108_1, c109_1, c110_1, c111_1, c112_1, c113_1, c114_1, c115_1, c116_1, c117_1, c118_1, c119_1, c120_1, c121_1, c122_1, c123_1, c124_1, c125_1, c126_1, c127_1, c128_1, c129_1, c130_1, c131_1, c132_1, c133_1, c134_1, c135_1, c136_1, c137_1, c138_1, c139_1, c140_1, c141_1, c142_1, c143_1, c144_1, c145_1, c146_1, c147_1, c148_1, c149_1, c150_1, c151_1, c152_1, c153_1, c154_1, c155_1, c156_1, c157_1, c158_1, c159_1, c160_1, c161_1, c162_1, c163_1, c164_1, c165_1, c166_1, c167_1, c168_1, c169_1, c170_1, c171_1, c172_1, c173_1, c174_1, c175_1, c176_1, c177_1, c178_1, c179_1, c180_1, c181_1, c182_1, c183_1, c184_1, c185_1, c186_1, c187_1, c188_1, c189_1, c190_1, c191_1, c192_1, c193_1, c194_1, c195_1, c196_1, c197_1, c198_1, c199_1, c200_1, c201_1, c202_1, c203_1, c204_1, c205_1, c206_1, c207_1, c208_1, c209_1, c210_1, c211_1, c212_1, c213_1, c214_1, c215_1, c216_1, c217_1, c218_1, c219_1, c220_1, c221_1, c222_1, c223_1, c224_1, c225_1, c226_1, c227_1, c228_1, c229_1, c230_1, c231_1, c232_1, c233_1, c234_1, c235_1, c236_1, c237_1, c238_1, c239_1, c240_1, c241_1, c242_1, c243_1, c244_1, c245_1, c246_1, c247_1, c248_1, c249_1, c250_1, c254_1, c255_1, c256_1, c257_1, c258_1, c259_1, c260_1 ---------------------------------------- (17) SIsEmptyProof (BOTH BOUNDS(ID, ID)) The set S is empty ---------------------------------------- (18) BOUNDS(1, 1) ---------------------------------------- (19) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (20) Obligation: The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) S is empty. Rewrite Strategy: FULL ---------------------------------------- (21) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (22) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok ---------------------------------------- (23) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: active, U102, isNaturalKind, U103, isLNatKind, U104, U105, isNatural, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U102 < active isNaturalKind < active U103 < active isLNatKind < active U104 < active U105 < active isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U102 < proper isNaturalKind < proper U103 < proper isLNatKind < proper U104 < proper U105 < proper isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (24) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U102, active, isNaturalKind, U103, isLNatKind, U104, U105, isNatural, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U102 < active isNaturalKind < active U103 < active isLNatKind < active U104 < active U105 < active isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U102 < proper isNaturalKind < proper U103 < proper isLNatKind < proper U104 < proper U105 < proper isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (25) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) Induction Base: U102(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U102(gen_tt:mark:nil:0':ok3_0(+(1, +(n5_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (26) Complex Obligation (BEST) ---------------------------------------- (27) Obligation: Proved the lower bound n^1 for the following obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U102, active, isNaturalKind, U103, isLNatKind, U104, U105, isNatural, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U102 < active isNaturalKind < active U103 < active isLNatKind < active U104 < active U105 < active isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U102 < proper isNaturalKind < proper U103 < proper isLNatKind < proper U104 < proper U105 < proper isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (28) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (29) BOUNDS(n^1, INF) ---------------------------------------- (30) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: isNaturalKind, active, U103, isLNatKind, U104, U105, isNatural, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: isNaturalKind < active U103 < active isLNatKind < active U104 < active U105 < active isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top isNaturalKind < proper U103 < proper isLNatKind < proper U104 < proper U105 < proper isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (31) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) Induction Base: U103(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U103(gen_tt:mark:nil:0':ok3_0(+(1, +(n17319_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (32) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: isLNatKind, active, U104, U105, isNatural, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: isLNatKind < active U104 < active U105 < active isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top isLNatKind < proper U104 < proper U105 < proper isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (33) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) Induction Base: U104(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U104(gen_tt:mark:nil:0':ok3_0(+(1, +(n35249_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (34) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U105, active, isNatural, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U105 < active isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U105 < proper isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (35) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) Induction Base: U105(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U105(gen_tt:mark:nil:0':ok3_0(+(1, +(n53770_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (36) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: isNatural, active, U106, isLNat, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: isNatural < active U106 < active isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top isNatural < proper U106 < proper isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (37) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) Induction Base: U106(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U106(gen_tt:mark:nil:0':ok3_0(+(1, +(n64799_0, 1)))) ->_R^Omega(1) mark(U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (38) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: isLNat, active, U12, U112, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: isLNat < active U12 < active U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top isLNat < proper U12 < proper U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (39) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) Induction Base: U12(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U12(gen_tt:mark:nil:0':ok3_0(+(1, +(n67850_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (40) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U112, active, U13, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U112 < active U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U112 < proper U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (41) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) Induction Base: U112(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U112(gen_tt:mark:nil:0':ok3_0(+(1, +(n87757_0, 1)))) ->_R^Omega(1) mark(U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (42) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U13, active, U122, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U13 < active U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U13 < proper U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (43) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) Induction Base: U13(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U13(gen_tt:mark:nil:0':ok3_0(+(1, +(n91075_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (44) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U122, active, U14, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U122 < active U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U122 < proper U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (45) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) Induction Base: U122(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U122(gen_tt:mark:nil:0':ok3_0(+(1, +(n111906_0, 1)))) ->_R^Omega(1) mark(U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (46) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U14, active, snd, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U14 < active snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U14 < proper snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (47) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) Induction Base: U14(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U14(gen_tt:mark:nil:0':ok3_0(+(1, +(n115524_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (48) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: snd, active, splitAt, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: snd < active splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top snd < proper splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (49) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) Induction Base: snd(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: snd(gen_tt:mark:nil:0':ok3_0(+(1, +(n137279_0, 1)))) ->_R^Omega(1) mark(snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (50) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: splitAt, active, U172, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: splitAt < active U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top splitAt < proper U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (51) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) Induction Base: splitAt(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: splitAt(gen_tt:mark:nil:0':ok3_0(+(1, +(n141197_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (52) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U172, active, U182, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U172 < active U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U172 < proper U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (53) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) Induction Base: U172(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U172(gen_tt:mark:nil:0':ok3_0(+(1, +(n154745_0, 1)))) ->_R^Omega(1) mark(U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (54) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U182, active, U183, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U182 < active U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U182 < proper U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (55) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) Induction Base: U182(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U182(gen_tt:mark:nil:0':ok3_0(+(1, +(n158914_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (56) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U183, active, U192, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U183 < active U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U183 < proper U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (57) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) Induction Base: U183(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U183(gen_tt:mark:nil:0':ok3_0(+(1, +(n172777_0, 1)))) ->_R^Omega(1) mark(U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (58) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U192, active, U193, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U192 < active U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U192 < proper U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (59) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) Induction Base: U192(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U192(gen_tt:mark:nil:0':ok3_0(+(1, +(n177197_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (60) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U193, active, U202, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U193 < active U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U193 < proper U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (61) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) Induction Base: U193(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U193(gen_tt:mark:nil:0':ok3_0(+(1, +(n191574_0, 1)))) ->_R^Omega(1) mark(U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (62) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U202, active, U203, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U202 < active U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U202 < proper U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (63) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) Induction Base: U202(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U202(gen_tt:mark:nil:0':ok3_0(+(1, +(n196245_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (64) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U203, active, U204, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U203 < active U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U203 < proper U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (65) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) Induction Base: U203(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U203(gen_tt:mark:nil:0':ok3_0(+(1, +(n221255_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (66) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U204, active, U205, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U204 < active U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U204 < proper U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (67) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) Induction Base: U204(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U204(gen_tt:mark:nil:0':ok3_0(+(1, +(n246874_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (68) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U205, active, U206, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U205 < active U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U205 < proper U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (69) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) Induction Base: U205(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U205(gen_tt:mark:nil:0':ok3_0(+(1, +(n273102_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (70) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U206, active, U22, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U206 < active U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U206 < proper U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (71) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) Induction Base: U206(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U206(gen_tt:mark:nil:0':ok3_0(+(1, +(n289205_0, 1)))) ->_R^Omega(1) mark(U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (72) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U22, active, U23, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U22 < active U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U22 < proper U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (73) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) Induction Base: U22(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U22(gen_tt:mark:nil:0':ok3_0(+(1, +(n294724_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (74) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U23, active, U24, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U23 < active U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U23 < proper U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (75) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) Induction Base: U23(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U23(gen_tt:mark:nil:0':ok3_0(+(1, +(n322338_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (76) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U24, active, U232, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U24 < active U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U24 < proper U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (77) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) Induction Base: U24(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U24(gen_tt:mark:nil:0':ok3_0(+(1, +(n350561_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (78) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U232, active, U242, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U232 < active U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U232 < proper U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (79) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) Induction Base: U232(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U232(gen_tt:mark:nil:0':ok3_0(+(1, +(n367986_0, 1)))) ->_R^Omega(1) mark(U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (80) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U242, active, U243, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U242 < active U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U242 < proper U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (81) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) Induction Base: U242(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U242(gen_tt:mark:nil:0':ok3_0(+(1, +(n374154_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (82) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U243, active, U244, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U243 < active U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U243 < proper U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (83) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) Induction Base: U243(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U243(gen_tt:mark:nil:0':ok3_0(+(1, +(n403763_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (84) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U244, active, U245, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U244 < active U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U244 < proper U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (85) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) Induction Base: U244(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U244(gen_tt:mark:nil:0':ok3_0(+(1, +(n433981_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (86) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U245, active, U246, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U245 < active U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U245 < proper U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (87) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) Induction Base: U245(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U245(gen_tt:mark:nil:0':ok3_0(+(1, +(n464808_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (88) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U246, active, U252, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U246 < active U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U246 < proper U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (89) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) Induction Base: U246(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U246(gen_tt:mark:nil:0':ok3_0(+(1, +(n483959_0, 1)))) ->_R^Omega(1) mark(U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (90) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U252, active, U253, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U252 < active U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U252 < proper U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (91) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) Induction Base: U252(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U252(gen_tt:mark:nil:0':ok3_0(+(1, +(n490975_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (92) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U253, active, U254, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U253 < active U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U253 < proper U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (93) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) Induction Base: U253(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U253(gen_tt:mark:nil:0':ok3_0(+(1, +(n523188_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (94) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U254, active, U255, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U254 < active U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U254 < proper U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (95) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) Induction Base: U254(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U254(gen_tt:mark:nil:0':ok3_0(+(1, +(n556010_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (96) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U255, active, U256, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U255 < active U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U255 < proper U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (97) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) Induction Base: U255(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U255(gen_tt:mark:nil:0':ok3_0(+(1, +(n589441_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (98) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U256, active, U262, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U256 < active U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U256 < proper U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (99) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) Induction Base: U256(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U256(gen_tt:mark:nil:0':ok3_0(+(1, +(n610318_0, 1)))) ->_R^Omega(1) mark(U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (100) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U262, active, U272, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U262 < active U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U262 < proper U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (101) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) Induction Base: U262(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U262(gen_tt:mark:nil:0':ok3_0(+(1, +(n618182_0, 1)))) ->_R^Omega(1) mark(U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (102) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U272, active, U282, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U272 < active U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U272 < proper U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (103) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) Induction Base: U272(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: U272(gen_tt:mark:nil:0':ok3_0(+(1, +(n626147_0, 1)))) ->_R^Omega(1) mark(U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (104) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U282, active, cons, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U282 < active cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U282 < proper cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (105) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n634213_0) Induction Base: U282(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: U282(gen_tt:mark:nil:0':ok3_0(+(1, +(n634213_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (106) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n634213_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: cons, active, natsFrom, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: cons < active natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top cons < proper natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (107) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: cons(gen_tt:mark:nil:0':ok3_0(+(1, n656020_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n656020_0) Induction Base: cons(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b)) Induction Step: cons(gen_tt:mark:nil:0':ok3_0(+(1, +(n656020_0, 1))), gen_tt:mark:nil:0':ok3_0(b)) ->_R^Omega(1) mark(cons(gen_tt:mark:nil:0':ok3_0(+(1, n656020_0)), gen_tt:mark:nil:0':ok3_0(b))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (108) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n634213_0) cons(gen_tt:mark:nil:0':ok3_0(+(1, n656020_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n656020_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: natsFrom, active, s, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: natsFrom < active s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top natsFrom < proper s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (109) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, n678133_0))) -> *4_0, rt in Omega(n678133_0) Induction Base: natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, +(n678133_0, 1)))) ->_R^Omega(1) mark(natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, n678133_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (110) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n634213_0) cons(gen_tt:mark:nil:0':ok3_0(+(1, n656020_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n656020_0) natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, n678133_0))) -> *4_0, rt in Omega(n678133_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: s, active, U292, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: s < active U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top s < proper U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (111) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: s(gen_tt:mark:nil:0':ok3_0(+(1, n686600_0))) -> *4_0, rt in Omega(n686600_0) Induction Base: s(gen_tt:mark:nil:0':ok3_0(+(1, 0))) Induction Step: s(gen_tt:mark:nil:0':ok3_0(+(1, +(n686600_0, 1)))) ->_R^Omega(1) mark(s(gen_tt:mark:nil:0':ok3_0(+(1, n686600_0)))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (112) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n634213_0) cons(gen_tt:mark:nil:0':ok3_0(+(1, n656020_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n656020_0) natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, n678133_0))) -> *4_0, rt in Omega(n678133_0) s(gen_tt:mark:nil:0':ok3_0(+(1, n686600_0))) -> *4_0, rt in Omega(n686600_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U292, active, U293, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U292 < active U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U292 < proper U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top ---------------------------------------- (113) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: U292(gen_tt:mark:nil:0':ok3_0(+(1, n695168_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n695168_0) Induction Base: U292(gen_tt:mark:nil:0':ok3_0(+(1, 0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) Induction Step: U292(gen_tt:mark:nil:0':ok3_0(+(1, +(n695168_0, 1))), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) ->_R^Omega(1) mark(U292(gen_tt:mark:nil:0':ok3_0(+(1, n695168_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c))) ->_IH mark(*4_0) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (114) Obligation: TRS: Rules: active(U101(tt, V1, V2)) -> mark(U102(isNaturalKind(V1), V1, V2)) active(U102(tt, V1, V2)) -> mark(U103(isLNatKind(V2), V1, V2)) active(U103(tt, V1, V2)) -> mark(U104(isLNatKind(V2), V1, V2)) active(U104(tt, V1, V2)) -> mark(U105(isNatural(V1), V2)) active(U105(tt, V2)) -> mark(U106(isLNat(V2))) active(U106(tt)) -> mark(tt) active(U11(tt, N, XS)) -> mark(U12(isNaturalKind(N), N, XS)) active(U111(tt, V2)) -> mark(U112(isLNatKind(V2))) active(U112(tt)) -> mark(tt) active(U12(tt, N, XS)) -> mark(U13(isLNat(XS), N, XS)) active(U121(tt, V2)) -> mark(U122(isLNatKind(V2))) active(U122(tt)) -> mark(tt) active(U13(tt, N, XS)) -> mark(U14(isLNatKind(XS), N, XS)) active(U131(tt)) -> mark(tt) active(U14(tt, N, XS)) -> mark(snd(splitAt(N, XS))) active(U141(tt)) -> mark(tt) active(U151(tt)) -> mark(tt) active(U161(tt)) -> mark(tt) active(U171(tt, V2)) -> mark(U172(isLNatKind(V2))) active(U172(tt)) -> mark(tt) active(U181(tt, V1)) -> mark(U182(isLNatKind(V1), V1)) active(U182(tt, V1)) -> mark(U183(isLNat(V1))) active(U183(tt)) -> mark(tt) active(U191(tt, V1)) -> mark(U192(isNaturalKind(V1), V1)) active(U192(tt, V1)) -> mark(U193(isNatural(V1))) active(U193(tt)) -> mark(tt) active(U201(tt, V1, V2)) -> mark(U202(isNaturalKind(V1), V1, V2)) active(U202(tt, V1, V2)) -> mark(U203(isLNatKind(V2), V1, V2)) active(U203(tt, V1, V2)) -> mark(U204(isLNatKind(V2), V1, V2)) active(U204(tt, V1, V2)) -> mark(U205(isNatural(V1), V2)) active(U205(tt, V2)) -> mark(U206(isLNat(V2))) active(U206(tt)) -> mark(tt) active(U21(tt, X, Y)) -> mark(U22(isLNatKind(X), X, Y)) active(U211(tt)) -> mark(tt) active(U22(tt, X, Y)) -> mark(U23(isLNat(Y), X, Y)) active(U221(tt)) -> mark(tt) active(U23(tt, X, Y)) -> mark(U24(isLNatKind(Y), X)) active(U231(tt, V2)) -> mark(U232(isLNatKind(V2))) active(U232(tt)) -> mark(tt) active(U24(tt, X)) -> mark(X) active(U241(tt, V1, V2)) -> mark(U242(isLNatKind(V1), V1, V2)) active(U242(tt, V1, V2)) -> mark(U243(isLNatKind(V2), V1, V2)) active(U243(tt, V1, V2)) -> mark(U244(isLNatKind(V2), V1, V2)) active(U244(tt, V1, V2)) -> mark(U245(isLNat(V1), V2)) active(U245(tt, V2)) -> mark(U246(isLNat(V2))) active(U246(tt)) -> mark(tt) active(U251(tt, V1, V2)) -> mark(U252(isNaturalKind(V1), V1, V2)) active(U252(tt, V1, V2)) -> mark(U253(isLNatKind(V2), V1, V2)) active(U253(tt, V1, V2)) -> mark(U254(isLNatKind(V2), V1, V2)) active(U254(tt, V1, V2)) -> mark(U255(isNatural(V1), V2)) active(U255(tt, V2)) -> mark(U256(isLNat(V2))) active(U256(tt)) -> mark(tt) active(U261(tt, V2)) -> mark(U262(isLNatKind(V2))) active(U262(tt)) -> mark(tt) active(U271(tt, V2)) -> mark(U272(isLNatKind(V2))) active(U272(tt)) -> mark(tt) active(U281(tt, N)) -> mark(U282(isNaturalKind(N), N)) active(U282(tt, N)) -> mark(cons(N, natsFrom(s(N)))) active(U291(tt, N, XS)) -> mark(U292(isNaturalKind(N), N, XS)) active(U292(tt, N, XS)) -> mark(U293(isLNat(XS), N, XS)) active(U293(tt, N, XS)) -> mark(U294(isLNatKind(XS), N, XS)) active(U294(tt, N, XS)) -> mark(head(afterNth(N, XS))) active(U301(tt, X, Y)) -> mark(U302(isLNatKind(X), Y)) active(U302(tt, Y)) -> mark(U303(isLNat(Y), Y)) active(U303(tt, Y)) -> mark(U304(isLNatKind(Y), Y)) active(U304(tt, Y)) -> mark(Y) active(U31(tt, N, XS)) -> mark(U32(isNaturalKind(N), N, XS)) active(U311(tt, XS)) -> mark(U312(isLNatKind(XS), XS)) active(U312(tt, XS)) -> mark(pair(nil, XS)) active(U32(tt, N, XS)) -> mark(U33(isLNat(XS), N, XS)) active(U321(tt, N, X, XS)) -> mark(U322(isNaturalKind(N), N, X, XS)) active(U322(tt, N, X, XS)) -> mark(U323(isNatural(X), N, X, XS)) active(U323(tt, N, X, XS)) -> mark(U324(isNaturalKind(X), N, X, XS)) active(U324(tt, N, X, XS)) -> mark(U325(isLNat(XS), N, X, XS)) active(U325(tt, N, X, XS)) -> mark(U326(isLNatKind(XS), N, X, XS)) active(U326(tt, N, X, XS)) -> mark(U327(splitAt(N, XS), X)) active(U327(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(U33(tt, N, XS)) -> mark(U34(isLNatKind(XS), N)) active(U331(tt, N, XS)) -> mark(U332(isNaturalKind(N), XS)) active(U332(tt, XS)) -> mark(U333(isLNat(XS), XS)) active(U333(tt, XS)) -> mark(U334(isLNatKind(XS), XS)) active(U334(tt, XS)) -> mark(XS) active(U34(tt, N)) -> mark(N) active(U341(tt, N, XS)) -> mark(U342(isNaturalKind(N), N, XS)) active(U342(tt, N, XS)) -> mark(U343(isLNat(XS), N, XS)) active(U343(tt, N, XS)) -> mark(U344(isLNatKind(XS), N, XS)) active(U344(tt, N, XS)) -> mark(fst(splitAt(N, XS))) active(U41(tt, V1, V2)) -> mark(U42(isNaturalKind(V1), V1, V2)) active(U42(tt, V1, V2)) -> mark(U43(isLNatKind(V2), V1, V2)) active(U43(tt, V1, V2)) -> mark(U44(isLNatKind(V2), V1, V2)) active(U44(tt, V1, V2)) -> mark(U45(isNatural(V1), V2)) active(U45(tt, V2)) -> mark(U46(isLNat(V2))) active(U46(tt)) -> mark(tt) active(U51(tt, V1, V2)) -> mark(U52(isNaturalKind(V1), V1, V2)) active(U52(tt, V1, V2)) -> mark(U53(isLNatKind(V2), V1, V2)) active(U53(tt, V1, V2)) -> mark(U54(isLNatKind(V2), V1, V2)) active(U54(tt, V1, V2)) -> mark(U55(isNatural(V1), V2)) active(U55(tt, V2)) -> mark(U56(isLNat(V2))) active(U56(tt)) -> mark(tt) active(U61(tt, V1)) -> mark(U62(isPLNatKind(V1), V1)) active(U62(tt, V1)) -> mark(U63(isPLNat(V1))) active(U63(tt)) -> mark(tt) active(U71(tt, V1)) -> mark(U72(isNaturalKind(V1), V1)) active(U72(tt, V1)) -> mark(U73(isNatural(V1))) active(U73(tt)) -> mark(tt) active(U81(tt, V1)) -> mark(U82(isPLNatKind(V1), V1)) active(U82(tt, V1)) -> mark(U83(isPLNat(V1))) active(U83(tt)) -> mark(tt) active(U91(tt, V1)) -> mark(U92(isLNatKind(V1), V1)) active(U92(tt, V1)) -> mark(U93(isLNat(V1))) active(U93(tt)) -> mark(tt) active(afterNth(N, XS)) -> mark(U11(isNatural(N), N, XS)) active(fst(pair(X, Y))) -> mark(U21(isLNat(X), X, Y)) active(head(cons(N, XS))) -> mark(U31(isNatural(N), N, XS)) active(isLNat(nil)) -> mark(tt) active(isLNat(afterNth(V1, V2))) -> mark(U41(isNaturalKind(V1), V1, V2)) active(isLNat(cons(V1, V2))) -> mark(U51(isNaturalKind(V1), V1, V2)) active(isLNat(fst(V1))) -> mark(U61(isPLNatKind(V1), V1)) active(isLNat(natsFrom(V1))) -> mark(U71(isNaturalKind(V1), V1)) active(isLNat(snd(V1))) -> mark(U81(isPLNatKind(V1), V1)) active(isLNat(tail(V1))) -> mark(U91(isLNatKind(V1), V1)) active(isLNat(take(V1, V2))) -> mark(U101(isNaturalKind(V1), V1, V2)) active(isLNatKind(nil)) -> mark(tt) active(isLNatKind(afterNth(V1, V2))) -> mark(U111(isNaturalKind(V1), V2)) active(isLNatKind(cons(V1, V2))) -> mark(U121(isNaturalKind(V1), V2)) active(isLNatKind(fst(V1))) -> mark(U131(isPLNatKind(V1))) active(isLNatKind(natsFrom(V1))) -> mark(U141(isNaturalKind(V1))) active(isLNatKind(snd(V1))) -> mark(U151(isPLNatKind(V1))) active(isLNatKind(tail(V1))) -> mark(U161(isLNatKind(V1))) active(isLNatKind(take(V1, V2))) -> mark(U171(isNaturalKind(V1), V2)) active(isNatural(0')) -> mark(tt) active(isNatural(head(V1))) -> mark(U181(isLNatKind(V1), V1)) active(isNatural(s(V1))) -> mark(U191(isNaturalKind(V1), V1)) active(isNatural(sel(V1, V2))) -> mark(U201(isNaturalKind(V1), V1, V2)) active(isNaturalKind(0')) -> mark(tt) active(isNaturalKind(head(V1))) -> mark(U211(isLNatKind(V1))) active(isNaturalKind(s(V1))) -> mark(U221(isNaturalKind(V1))) active(isNaturalKind(sel(V1, V2))) -> mark(U231(isNaturalKind(V1), V2)) active(isPLNat(pair(V1, V2))) -> mark(U241(isLNatKind(V1), V1, V2)) active(isPLNat(splitAt(V1, V2))) -> mark(U251(isNaturalKind(V1), V1, V2)) active(isPLNatKind(pair(V1, V2))) -> mark(U261(isLNatKind(V1), V2)) active(isPLNatKind(splitAt(V1, V2))) -> mark(U271(isNaturalKind(V1), V2)) active(natsFrom(N)) -> mark(U281(isNatural(N), N)) active(sel(N, XS)) -> mark(U291(isNatural(N), N, XS)) active(snd(pair(X, Y))) -> mark(U301(isLNat(X), X, Y)) active(splitAt(0', XS)) -> mark(U311(isLNat(XS), XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U321(isNatural(N), N, X, XS)) active(tail(cons(N, XS))) -> mark(U331(isNatural(N), N, XS)) active(take(N, XS)) -> mark(U341(isNatural(N), N, XS)) active(U101(X1, X2, X3)) -> U101(active(X1), X2, X3) active(U102(X1, X2, X3)) -> U102(active(X1), X2, X3) active(U103(X1, X2, X3)) -> U103(active(X1), X2, X3) active(U104(X1, X2, X3)) -> U104(active(X1), X2, X3) active(U105(X1, X2)) -> U105(active(X1), X2) active(U106(X)) -> U106(active(X)) active(U11(X1, X2, X3)) -> U11(active(X1), X2, X3) active(U12(X1, X2, X3)) -> U12(active(X1), X2, X3) active(U111(X1, X2)) -> U111(active(X1), X2) active(U112(X)) -> U112(active(X)) active(U13(X1, X2, X3)) -> U13(active(X1), X2, X3) active(U121(X1, X2)) -> U121(active(X1), X2) active(U122(X)) -> U122(active(X)) active(U14(X1, X2, X3)) -> U14(active(X1), X2, X3) active(U131(X)) -> U131(active(X)) active(snd(X)) -> snd(active(X)) active(splitAt(X1, X2)) -> splitAt(active(X1), X2) active(splitAt(X1, X2)) -> splitAt(X1, active(X2)) active(U141(X)) -> U141(active(X)) active(U151(X)) -> U151(active(X)) active(U161(X)) -> U161(active(X)) active(U171(X1, X2)) -> U171(active(X1), X2) active(U172(X)) -> U172(active(X)) active(U181(X1, X2)) -> U181(active(X1), X2) active(U182(X1, X2)) -> U182(active(X1), X2) active(U183(X)) -> U183(active(X)) active(U191(X1, X2)) -> U191(active(X1), X2) active(U192(X1, X2)) -> U192(active(X1), X2) active(U193(X)) -> U193(active(X)) active(U201(X1, X2, X3)) -> U201(active(X1), X2, X3) active(U202(X1, X2, X3)) -> U202(active(X1), X2, X3) active(U203(X1, X2, X3)) -> U203(active(X1), X2, X3) active(U204(X1, X2, X3)) -> U204(active(X1), X2, X3) active(U205(X1, X2)) -> U205(active(X1), X2) active(U206(X)) -> U206(active(X)) active(U21(X1, X2, X3)) -> U21(active(X1), X2, X3) active(U22(X1, X2, X3)) -> U22(active(X1), X2, X3) active(U211(X)) -> U211(active(X)) active(U23(X1, X2, X3)) -> U23(active(X1), X2, X3) active(U221(X)) -> U221(active(X)) active(U24(X1, X2)) -> U24(active(X1), X2) active(U231(X1, X2)) -> U231(active(X1), X2) active(U232(X)) -> U232(active(X)) active(U241(X1, X2, X3)) -> U241(active(X1), X2, X3) active(U242(X1, X2, X3)) -> U242(active(X1), X2, X3) active(U243(X1, X2, X3)) -> U243(active(X1), X2, X3) active(U244(X1, X2, X3)) -> U244(active(X1), X2, X3) active(U245(X1, X2)) -> U245(active(X1), X2) active(U246(X)) -> U246(active(X)) active(U251(X1, X2, X3)) -> U251(active(X1), X2, X3) active(U252(X1, X2, X3)) -> U252(active(X1), X2, X3) active(U253(X1, X2, X3)) -> U253(active(X1), X2, X3) active(U254(X1, X2, X3)) -> U254(active(X1), X2, X3) active(U255(X1, X2)) -> U255(active(X1), X2) active(U256(X)) -> U256(active(X)) active(U261(X1, X2)) -> U261(active(X1), X2) active(U262(X)) -> U262(active(X)) active(U271(X1, X2)) -> U271(active(X1), X2) active(U272(X)) -> U272(active(X)) active(U281(X1, X2)) -> U281(active(X1), X2) active(U282(X1, X2)) -> U282(active(X1), X2) active(cons(X1, X2)) -> cons(active(X1), X2) active(natsFrom(X)) -> natsFrom(active(X)) active(s(X)) -> s(active(X)) active(U291(X1, X2, X3)) -> U291(active(X1), X2, X3) active(U292(X1, X2, X3)) -> U292(active(X1), X2, X3) active(U293(X1, X2, X3)) -> U293(active(X1), X2, X3) active(U294(X1, X2, X3)) -> U294(active(X1), X2, X3) active(head(X)) -> head(active(X)) active(afterNth(X1, X2)) -> afterNth(active(X1), X2) active(afterNth(X1, X2)) -> afterNth(X1, active(X2)) active(U301(X1, X2, X3)) -> U301(active(X1), X2, X3) active(U302(X1, X2)) -> U302(active(X1), X2) active(U303(X1, X2)) -> U303(active(X1), X2) active(U304(X1, X2)) -> U304(active(X1), X2) active(U31(X1, X2, X3)) -> U31(active(X1), X2, X3) active(U32(X1, X2, X3)) -> U32(active(X1), X2, X3) active(U311(X1, X2)) -> U311(active(X1), X2) active(U312(X1, X2)) -> U312(active(X1), X2) active(pair(X1, X2)) -> pair(active(X1), X2) active(pair(X1, X2)) -> pair(X1, active(X2)) active(U33(X1, X2, X3)) -> U33(active(X1), X2, X3) active(U321(X1, X2, X3, X4)) -> U321(active(X1), X2, X3, X4) active(U322(X1, X2, X3, X4)) -> U322(active(X1), X2, X3, X4) active(U323(X1, X2, X3, X4)) -> U323(active(X1), X2, X3, X4) active(U324(X1, X2, X3, X4)) -> U324(active(X1), X2, X3, X4) active(U325(X1, X2, X3, X4)) -> U325(active(X1), X2, X3, X4) active(U326(X1, X2, X3, X4)) -> U326(active(X1), X2, X3, X4) active(U327(X1, X2)) -> U327(active(X1), X2) active(U34(X1, X2)) -> U34(active(X1), X2) active(U331(X1, X2, X3)) -> U331(active(X1), X2, X3) active(U332(X1, X2)) -> U332(active(X1), X2) active(U333(X1, X2)) -> U333(active(X1), X2) active(U334(X1, X2)) -> U334(active(X1), X2) active(U341(X1, X2, X3)) -> U341(active(X1), X2, X3) active(U342(X1, X2, X3)) -> U342(active(X1), X2, X3) active(U343(X1, X2, X3)) -> U343(active(X1), X2, X3) active(U344(X1, X2, X3)) -> U344(active(X1), X2, X3) active(fst(X)) -> fst(active(X)) active(U41(X1, X2, X3)) -> U41(active(X1), X2, X3) active(U42(X1, X2, X3)) -> U42(active(X1), X2, X3) active(U43(X1, X2, X3)) -> U43(active(X1), X2, X3) active(U44(X1, X2, X3)) -> U44(active(X1), X2, X3) active(U45(X1, X2)) -> U45(active(X1), X2) active(U46(X)) -> U46(active(X)) active(U51(X1, X2, X3)) -> U51(active(X1), X2, X3) active(U52(X1, X2, X3)) -> U52(active(X1), X2, X3) active(U53(X1, X2, X3)) -> U53(active(X1), X2, X3) active(U54(X1, X2, X3)) -> U54(active(X1), X2, X3) active(U55(X1, X2)) -> U55(active(X1), X2) active(U56(X)) -> U56(active(X)) active(U61(X1, X2)) -> U61(active(X1), X2) active(U62(X1, X2)) -> U62(active(X1), X2) active(U63(X)) -> U63(active(X)) active(U71(X1, X2)) -> U71(active(X1), X2) active(U72(X1, X2)) -> U72(active(X1), X2) active(U73(X)) -> U73(active(X)) active(U81(X1, X2)) -> U81(active(X1), X2) active(U82(X1, X2)) -> U82(active(X1), X2) active(U83(X)) -> U83(active(X)) active(U91(X1, X2)) -> U91(active(X1), X2) active(U92(X1, X2)) -> U92(active(X1), X2) active(U93(X)) -> U93(active(X)) active(tail(X)) -> tail(active(X)) active(take(X1, X2)) -> take(active(X1), X2) active(take(X1, X2)) -> take(X1, active(X2)) active(sel(X1, X2)) -> sel(active(X1), X2) active(sel(X1, X2)) -> sel(X1, active(X2)) U101(mark(X1), X2, X3) -> mark(U101(X1, X2, X3)) U102(mark(X1), X2, X3) -> mark(U102(X1, X2, X3)) U103(mark(X1), X2, X3) -> mark(U103(X1, X2, X3)) U104(mark(X1), X2, X3) -> mark(U104(X1, X2, X3)) U105(mark(X1), X2) -> mark(U105(X1, X2)) U106(mark(X)) -> mark(U106(X)) U11(mark(X1), X2, X3) -> mark(U11(X1, X2, X3)) U12(mark(X1), X2, X3) -> mark(U12(X1, X2, X3)) U111(mark(X1), X2) -> mark(U111(X1, X2)) U112(mark(X)) -> mark(U112(X)) U13(mark(X1), X2, X3) -> mark(U13(X1, X2, X3)) U121(mark(X1), X2) -> mark(U121(X1, X2)) U122(mark(X)) -> mark(U122(X)) U14(mark(X1), X2, X3) -> mark(U14(X1, X2, X3)) U131(mark(X)) -> mark(U131(X)) snd(mark(X)) -> mark(snd(X)) splitAt(mark(X1), X2) -> mark(splitAt(X1, X2)) splitAt(X1, mark(X2)) -> mark(splitAt(X1, X2)) U141(mark(X)) -> mark(U141(X)) U151(mark(X)) -> mark(U151(X)) U161(mark(X)) -> mark(U161(X)) U171(mark(X1), X2) -> mark(U171(X1, X2)) U172(mark(X)) -> mark(U172(X)) U181(mark(X1), X2) -> mark(U181(X1, X2)) U182(mark(X1), X2) -> mark(U182(X1, X2)) U183(mark(X)) -> mark(U183(X)) U191(mark(X1), X2) -> mark(U191(X1, X2)) U192(mark(X1), X2) -> mark(U192(X1, X2)) U193(mark(X)) -> mark(U193(X)) U201(mark(X1), X2, X3) -> mark(U201(X1, X2, X3)) U202(mark(X1), X2, X3) -> mark(U202(X1, X2, X3)) U203(mark(X1), X2, X3) -> mark(U203(X1, X2, X3)) U204(mark(X1), X2, X3) -> mark(U204(X1, X2, X3)) U205(mark(X1), X2) -> mark(U205(X1, X2)) U206(mark(X)) -> mark(U206(X)) U21(mark(X1), X2, X3) -> mark(U21(X1, X2, X3)) U22(mark(X1), X2, X3) -> mark(U22(X1, X2, X3)) U211(mark(X)) -> mark(U211(X)) U23(mark(X1), X2, X3) -> mark(U23(X1, X2, X3)) U221(mark(X)) -> mark(U221(X)) U24(mark(X1), X2) -> mark(U24(X1, X2)) U231(mark(X1), X2) -> mark(U231(X1, X2)) U232(mark(X)) -> mark(U232(X)) U241(mark(X1), X2, X3) -> mark(U241(X1, X2, X3)) U242(mark(X1), X2, X3) -> mark(U242(X1, X2, X3)) U243(mark(X1), X2, X3) -> mark(U243(X1, X2, X3)) U244(mark(X1), X2, X3) -> mark(U244(X1, X2, X3)) U245(mark(X1), X2) -> mark(U245(X1, X2)) U246(mark(X)) -> mark(U246(X)) U251(mark(X1), X2, X3) -> mark(U251(X1, X2, X3)) U252(mark(X1), X2, X3) -> mark(U252(X1, X2, X3)) U253(mark(X1), X2, X3) -> mark(U253(X1, X2, X3)) U254(mark(X1), X2, X3) -> mark(U254(X1, X2, X3)) U255(mark(X1), X2) -> mark(U255(X1, X2)) U256(mark(X)) -> mark(U256(X)) U261(mark(X1), X2) -> mark(U261(X1, X2)) U262(mark(X)) -> mark(U262(X)) U271(mark(X1), X2) -> mark(U271(X1, X2)) U272(mark(X)) -> mark(U272(X)) U281(mark(X1), X2) -> mark(U281(X1, X2)) U282(mark(X1), X2) -> mark(U282(X1, X2)) cons(mark(X1), X2) -> mark(cons(X1, X2)) natsFrom(mark(X)) -> mark(natsFrom(X)) s(mark(X)) -> mark(s(X)) U291(mark(X1), X2, X3) -> mark(U291(X1, X2, X3)) U292(mark(X1), X2, X3) -> mark(U292(X1, X2, X3)) U293(mark(X1), X2, X3) -> mark(U293(X1, X2, X3)) U294(mark(X1), X2, X3) -> mark(U294(X1, X2, X3)) head(mark(X)) -> mark(head(X)) afterNth(mark(X1), X2) -> mark(afterNth(X1, X2)) afterNth(X1, mark(X2)) -> mark(afterNth(X1, X2)) U301(mark(X1), X2, X3) -> mark(U301(X1, X2, X3)) U302(mark(X1), X2) -> mark(U302(X1, X2)) U303(mark(X1), X2) -> mark(U303(X1, X2)) U304(mark(X1), X2) -> mark(U304(X1, X2)) U31(mark(X1), X2, X3) -> mark(U31(X1, X2, X3)) U32(mark(X1), X2, X3) -> mark(U32(X1, X2, X3)) U311(mark(X1), X2) -> mark(U311(X1, X2)) U312(mark(X1), X2) -> mark(U312(X1, X2)) pair(mark(X1), X2) -> mark(pair(X1, X2)) pair(X1, mark(X2)) -> mark(pair(X1, X2)) U33(mark(X1), X2, X3) -> mark(U33(X1, X2, X3)) U321(mark(X1), X2, X3, X4) -> mark(U321(X1, X2, X3, X4)) U322(mark(X1), X2, X3, X4) -> mark(U322(X1, X2, X3, X4)) U323(mark(X1), X2, X3, X4) -> mark(U323(X1, X2, X3, X4)) U324(mark(X1), X2, X3, X4) -> mark(U324(X1, X2, X3, X4)) U325(mark(X1), X2, X3, X4) -> mark(U325(X1, X2, X3, X4)) U326(mark(X1), X2, X3, X4) -> mark(U326(X1, X2, X3, X4)) U327(mark(X1), X2) -> mark(U327(X1, X2)) U34(mark(X1), X2) -> mark(U34(X1, X2)) U331(mark(X1), X2, X3) -> mark(U331(X1, X2, X3)) U332(mark(X1), X2) -> mark(U332(X1, X2)) U333(mark(X1), X2) -> mark(U333(X1, X2)) U334(mark(X1), X2) -> mark(U334(X1, X2)) U341(mark(X1), X2, X3) -> mark(U341(X1, X2, X3)) U342(mark(X1), X2, X3) -> mark(U342(X1, X2, X3)) U343(mark(X1), X2, X3) -> mark(U343(X1, X2, X3)) U344(mark(X1), X2, X3) -> mark(U344(X1, X2, X3)) fst(mark(X)) -> mark(fst(X)) U41(mark(X1), X2, X3) -> mark(U41(X1, X2, X3)) U42(mark(X1), X2, X3) -> mark(U42(X1, X2, X3)) U43(mark(X1), X2, X3) -> mark(U43(X1, X2, X3)) U44(mark(X1), X2, X3) -> mark(U44(X1, X2, X3)) U45(mark(X1), X2) -> mark(U45(X1, X2)) U46(mark(X)) -> mark(U46(X)) U51(mark(X1), X2, X3) -> mark(U51(X1, X2, X3)) U52(mark(X1), X2, X3) -> mark(U52(X1, X2, X3)) U53(mark(X1), X2, X3) -> mark(U53(X1, X2, X3)) U54(mark(X1), X2, X3) -> mark(U54(X1, X2, X3)) U55(mark(X1), X2) -> mark(U55(X1, X2)) U56(mark(X)) -> mark(U56(X)) U61(mark(X1), X2) -> mark(U61(X1, X2)) U62(mark(X1), X2) -> mark(U62(X1, X2)) U63(mark(X)) -> mark(U63(X)) U71(mark(X1), X2) -> mark(U71(X1, X2)) U72(mark(X1), X2) -> mark(U72(X1, X2)) U73(mark(X)) -> mark(U73(X)) U81(mark(X1), X2) -> mark(U81(X1, X2)) U82(mark(X1), X2) -> mark(U82(X1, X2)) U83(mark(X)) -> mark(U83(X)) U91(mark(X1), X2) -> mark(U91(X1, X2)) U92(mark(X1), X2) -> mark(U92(X1, X2)) U93(mark(X)) -> mark(U93(X)) tail(mark(X)) -> mark(tail(X)) take(mark(X1), X2) -> mark(take(X1, X2)) take(X1, mark(X2)) -> mark(take(X1, X2)) sel(mark(X1), X2) -> mark(sel(X1, X2)) sel(X1, mark(X2)) -> mark(sel(X1, X2)) proper(U101(X1, X2, X3)) -> U101(proper(X1), proper(X2), proper(X3)) proper(tt) -> ok(tt) proper(U102(X1, X2, X3)) -> U102(proper(X1), proper(X2), proper(X3)) proper(isNaturalKind(X)) -> isNaturalKind(proper(X)) proper(U103(X1, X2, X3)) -> U103(proper(X1), proper(X2), proper(X3)) proper(isLNatKind(X)) -> isLNatKind(proper(X)) proper(U104(X1, X2, X3)) -> U104(proper(X1), proper(X2), proper(X3)) proper(U105(X1, X2)) -> U105(proper(X1), proper(X2)) proper(isNatural(X)) -> isNatural(proper(X)) proper(U106(X)) -> U106(proper(X)) proper(isLNat(X)) -> isLNat(proper(X)) proper(U11(X1, X2, X3)) -> U11(proper(X1), proper(X2), proper(X3)) proper(U12(X1, X2, X3)) -> U12(proper(X1), proper(X2), proper(X3)) proper(U111(X1, X2)) -> U111(proper(X1), proper(X2)) proper(U112(X)) -> U112(proper(X)) proper(U13(X1, X2, X3)) -> U13(proper(X1), proper(X2), proper(X3)) proper(U121(X1, X2)) -> U121(proper(X1), proper(X2)) proper(U122(X)) -> U122(proper(X)) proper(U14(X1, X2, X3)) -> U14(proper(X1), proper(X2), proper(X3)) proper(U131(X)) -> U131(proper(X)) proper(snd(X)) -> snd(proper(X)) proper(splitAt(X1, X2)) -> splitAt(proper(X1), proper(X2)) proper(U141(X)) -> U141(proper(X)) proper(U151(X)) -> U151(proper(X)) proper(U161(X)) -> U161(proper(X)) proper(U171(X1, X2)) -> U171(proper(X1), proper(X2)) proper(U172(X)) -> U172(proper(X)) proper(U181(X1, X2)) -> U181(proper(X1), proper(X2)) proper(U182(X1, X2)) -> U182(proper(X1), proper(X2)) proper(U183(X)) -> U183(proper(X)) proper(U191(X1, X2)) -> U191(proper(X1), proper(X2)) proper(U192(X1, X2)) -> U192(proper(X1), proper(X2)) proper(U193(X)) -> U193(proper(X)) proper(U201(X1, X2, X3)) -> U201(proper(X1), proper(X2), proper(X3)) proper(U202(X1, X2, X3)) -> U202(proper(X1), proper(X2), proper(X3)) proper(U203(X1, X2, X3)) -> U203(proper(X1), proper(X2), proper(X3)) proper(U204(X1, X2, X3)) -> U204(proper(X1), proper(X2), proper(X3)) proper(U205(X1, X2)) -> U205(proper(X1), proper(X2)) proper(U206(X)) -> U206(proper(X)) proper(U21(X1, X2, X3)) -> U21(proper(X1), proper(X2), proper(X3)) proper(U22(X1, X2, X3)) -> U22(proper(X1), proper(X2), proper(X3)) proper(U211(X)) -> U211(proper(X)) proper(U23(X1, X2, X3)) -> U23(proper(X1), proper(X2), proper(X3)) proper(U221(X)) -> U221(proper(X)) proper(U24(X1, X2)) -> U24(proper(X1), proper(X2)) proper(U231(X1, X2)) -> U231(proper(X1), proper(X2)) proper(U232(X)) -> U232(proper(X)) proper(U241(X1, X2, X3)) -> U241(proper(X1), proper(X2), proper(X3)) proper(U242(X1, X2, X3)) -> U242(proper(X1), proper(X2), proper(X3)) proper(U243(X1, X2, X3)) -> U243(proper(X1), proper(X2), proper(X3)) proper(U244(X1, X2, X3)) -> U244(proper(X1), proper(X2), proper(X3)) proper(U245(X1, X2)) -> U245(proper(X1), proper(X2)) proper(U246(X)) -> U246(proper(X)) proper(U251(X1, X2, X3)) -> U251(proper(X1), proper(X2), proper(X3)) proper(U252(X1, X2, X3)) -> U252(proper(X1), proper(X2), proper(X3)) proper(U253(X1, X2, X3)) -> U253(proper(X1), proper(X2), proper(X3)) proper(U254(X1, X2, X3)) -> U254(proper(X1), proper(X2), proper(X3)) proper(U255(X1, X2)) -> U255(proper(X1), proper(X2)) proper(U256(X)) -> U256(proper(X)) proper(U261(X1, X2)) -> U261(proper(X1), proper(X2)) proper(U262(X)) -> U262(proper(X)) proper(U271(X1, X2)) -> U271(proper(X1), proper(X2)) proper(U272(X)) -> U272(proper(X)) proper(U281(X1, X2)) -> U281(proper(X1), proper(X2)) proper(U282(X1, X2)) -> U282(proper(X1), proper(X2)) proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)) proper(natsFrom(X)) -> natsFrom(proper(X)) proper(s(X)) -> s(proper(X)) proper(U291(X1, X2, X3)) -> U291(proper(X1), proper(X2), proper(X3)) proper(U292(X1, X2, X3)) -> U292(proper(X1), proper(X2), proper(X3)) proper(U293(X1, X2, X3)) -> U293(proper(X1), proper(X2), proper(X3)) proper(U294(X1, X2, X3)) -> U294(proper(X1), proper(X2), proper(X3)) proper(head(X)) -> head(proper(X)) proper(afterNth(X1, X2)) -> afterNth(proper(X1), proper(X2)) proper(U301(X1, X2, X3)) -> U301(proper(X1), proper(X2), proper(X3)) proper(U302(X1, X2)) -> U302(proper(X1), proper(X2)) proper(U303(X1, X2)) -> U303(proper(X1), proper(X2)) proper(U304(X1, X2)) -> U304(proper(X1), proper(X2)) proper(U31(X1, X2, X3)) -> U31(proper(X1), proper(X2), proper(X3)) proper(U32(X1, X2, X3)) -> U32(proper(X1), proper(X2), proper(X3)) proper(U311(X1, X2)) -> U311(proper(X1), proper(X2)) proper(U312(X1, X2)) -> U312(proper(X1), proper(X2)) proper(pair(X1, X2)) -> pair(proper(X1), proper(X2)) proper(nil) -> ok(nil) proper(U33(X1, X2, X3)) -> U33(proper(X1), proper(X2), proper(X3)) proper(U321(X1, X2, X3, X4)) -> U321(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U322(X1, X2, X3, X4)) -> U322(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U323(X1, X2, X3, X4)) -> U323(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U324(X1, X2, X3, X4)) -> U324(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U325(X1, X2, X3, X4)) -> U325(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U326(X1, X2, X3, X4)) -> U326(proper(X1), proper(X2), proper(X3), proper(X4)) proper(U327(X1, X2)) -> U327(proper(X1), proper(X2)) proper(U34(X1, X2)) -> U34(proper(X1), proper(X2)) proper(U331(X1, X2, X3)) -> U331(proper(X1), proper(X2), proper(X3)) proper(U332(X1, X2)) -> U332(proper(X1), proper(X2)) proper(U333(X1, X2)) -> U333(proper(X1), proper(X2)) proper(U334(X1, X2)) -> U334(proper(X1), proper(X2)) proper(U341(X1, X2, X3)) -> U341(proper(X1), proper(X2), proper(X3)) proper(U342(X1, X2, X3)) -> U342(proper(X1), proper(X2), proper(X3)) proper(U343(X1, X2, X3)) -> U343(proper(X1), proper(X2), proper(X3)) proper(U344(X1, X2, X3)) -> U344(proper(X1), proper(X2), proper(X3)) proper(fst(X)) -> fst(proper(X)) proper(U41(X1, X2, X3)) -> U41(proper(X1), proper(X2), proper(X3)) proper(U42(X1, X2, X3)) -> U42(proper(X1), proper(X2), proper(X3)) proper(U43(X1, X2, X3)) -> U43(proper(X1), proper(X2), proper(X3)) proper(U44(X1, X2, X3)) -> U44(proper(X1), proper(X2), proper(X3)) proper(U45(X1, X2)) -> U45(proper(X1), proper(X2)) proper(U46(X)) -> U46(proper(X)) proper(U51(X1, X2, X3)) -> U51(proper(X1), proper(X2), proper(X3)) proper(U52(X1, X2, X3)) -> U52(proper(X1), proper(X2), proper(X3)) proper(U53(X1, X2, X3)) -> U53(proper(X1), proper(X2), proper(X3)) proper(U54(X1, X2, X3)) -> U54(proper(X1), proper(X2), proper(X3)) proper(U55(X1, X2)) -> U55(proper(X1), proper(X2)) proper(U56(X)) -> U56(proper(X)) proper(U61(X1, X2)) -> U61(proper(X1), proper(X2)) proper(U62(X1, X2)) -> U62(proper(X1), proper(X2)) proper(isPLNatKind(X)) -> isPLNatKind(proper(X)) proper(U63(X)) -> U63(proper(X)) proper(isPLNat(X)) -> isPLNat(proper(X)) proper(U71(X1, X2)) -> U71(proper(X1), proper(X2)) proper(U72(X1, X2)) -> U72(proper(X1), proper(X2)) proper(U73(X)) -> U73(proper(X)) proper(U81(X1, X2)) -> U81(proper(X1), proper(X2)) proper(U82(X1, X2)) -> U82(proper(X1), proper(X2)) proper(U83(X)) -> U83(proper(X)) proper(U91(X1, X2)) -> U91(proper(X1), proper(X2)) proper(U92(X1, X2)) -> U92(proper(X1), proper(X2)) proper(U93(X)) -> U93(proper(X)) proper(tail(X)) -> tail(proper(X)) proper(take(X1, X2)) -> take(proper(X1), proper(X2)) proper(0') -> ok(0') proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)) U101(ok(X1), ok(X2), ok(X3)) -> ok(U101(X1, X2, X3)) U102(ok(X1), ok(X2), ok(X3)) -> ok(U102(X1, X2, X3)) isNaturalKind(ok(X)) -> ok(isNaturalKind(X)) U103(ok(X1), ok(X2), ok(X3)) -> ok(U103(X1, X2, X3)) isLNatKind(ok(X)) -> ok(isLNatKind(X)) U104(ok(X1), ok(X2), ok(X3)) -> ok(U104(X1, X2, X3)) U105(ok(X1), ok(X2)) -> ok(U105(X1, X2)) isNatural(ok(X)) -> ok(isNatural(X)) U106(ok(X)) -> ok(U106(X)) isLNat(ok(X)) -> ok(isLNat(X)) U11(ok(X1), ok(X2), ok(X3)) -> ok(U11(X1, X2, X3)) U12(ok(X1), ok(X2), ok(X3)) -> ok(U12(X1, X2, X3)) U111(ok(X1), ok(X2)) -> ok(U111(X1, X2)) U112(ok(X)) -> ok(U112(X)) U13(ok(X1), ok(X2), ok(X3)) -> ok(U13(X1, X2, X3)) U121(ok(X1), ok(X2)) -> ok(U121(X1, X2)) U122(ok(X)) -> ok(U122(X)) U14(ok(X1), ok(X2), ok(X3)) -> ok(U14(X1, X2, X3)) U131(ok(X)) -> ok(U131(X)) snd(ok(X)) -> ok(snd(X)) splitAt(ok(X1), ok(X2)) -> ok(splitAt(X1, X2)) U141(ok(X)) -> ok(U141(X)) U151(ok(X)) -> ok(U151(X)) U161(ok(X)) -> ok(U161(X)) U171(ok(X1), ok(X2)) -> ok(U171(X1, X2)) U172(ok(X)) -> ok(U172(X)) U181(ok(X1), ok(X2)) -> ok(U181(X1, X2)) U182(ok(X1), ok(X2)) -> ok(U182(X1, X2)) U183(ok(X)) -> ok(U183(X)) U191(ok(X1), ok(X2)) -> ok(U191(X1, X2)) U192(ok(X1), ok(X2)) -> ok(U192(X1, X2)) U193(ok(X)) -> ok(U193(X)) U201(ok(X1), ok(X2), ok(X3)) -> ok(U201(X1, X2, X3)) U202(ok(X1), ok(X2), ok(X3)) -> ok(U202(X1, X2, X3)) U203(ok(X1), ok(X2), ok(X3)) -> ok(U203(X1, X2, X3)) U204(ok(X1), ok(X2), ok(X3)) -> ok(U204(X1, X2, X3)) U205(ok(X1), ok(X2)) -> ok(U205(X1, X2)) U206(ok(X)) -> ok(U206(X)) U21(ok(X1), ok(X2), ok(X3)) -> ok(U21(X1, X2, X3)) U22(ok(X1), ok(X2), ok(X3)) -> ok(U22(X1, X2, X3)) U211(ok(X)) -> ok(U211(X)) U23(ok(X1), ok(X2), ok(X3)) -> ok(U23(X1, X2, X3)) U221(ok(X)) -> ok(U221(X)) U24(ok(X1), ok(X2)) -> ok(U24(X1, X2)) U231(ok(X1), ok(X2)) -> ok(U231(X1, X2)) U232(ok(X)) -> ok(U232(X)) U241(ok(X1), ok(X2), ok(X3)) -> ok(U241(X1, X2, X3)) U242(ok(X1), ok(X2), ok(X3)) -> ok(U242(X1, X2, X3)) U243(ok(X1), ok(X2), ok(X3)) -> ok(U243(X1, X2, X3)) U244(ok(X1), ok(X2), ok(X3)) -> ok(U244(X1, X2, X3)) U245(ok(X1), ok(X2)) -> ok(U245(X1, X2)) U246(ok(X)) -> ok(U246(X)) U251(ok(X1), ok(X2), ok(X3)) -> ok(U251(X1, X2, X3)) U252(ok(X1), ok(X2), ok(X3)) -> ok(U252(X1, X2, X3)) U253(ok(X1), ok(X2), ok(X3)) -> ok(U253(X1, X2, X3)) U254(ok(X1), ok(X2), ok(X3)) -> ok(U254(X1, X2, X3)) U255(ok(X1), ok(X2)) -> ok(U255(X1, X2)) U256(ok(X)) -> ok(U256(X)) U261(ok(X1), ok(X2)) -> ok(U261(X1, X2)) U262(ok(X)) -> ok(U262(X)) U271(ok(X1), ok(X2)) -> ok(U271(X1, X2)) U272(ok(X)) -> ok(U272(X)) U281(ok(X1), ok(X2)) -> ok(U281(X1, X2)) U282(ok(X1), ok(X2)) -> ok(U282(X1, X2)) cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)) natsFrom(ok(X)) -> ok(natsFrom(X)) s(ok(X)) -> ok(s(X)) U291(ok(X1), ok(X2), ok(X3)) -> ok(U291(X1, X2, X3)) U292(ok(X1), ok(X2), ok(X3)) -> ok(U292(X1, X2, X3)) U293(ok(X1), ok(X2), ok(X3)) -> ok(U293(X1, X2, X3)) U294(ok(X1), ok(X2), ok(X3)) -> ok(U294(X1, X2, X3)) head(ok(X)) -> ok(head(X)) afterNth(ok(X1), ok(X2)) -> ok(afterNth(X1, X2)) U301(ok(X1), ok(X2), ok(X3)) -> ok(U301(X1, X2, X3)) U302(ok(X1), ok(X2)) -> ok(U302(X1, X2)) U303(ok(X1), ok(X2)) -> ok(U303(X1, X2)) U304(ok(X1), ok(X2)) -> ok(U304(X1, X2)) U31(ok(X1), ok(X2), ok(X3)) -> ok(U31(X1, X2, X3)) U32(ok(X1), ok(X2), ok(X3)) -> ok(U32(X1, X2, X3)) U311(ok(X1), ok(X2)) -> ok(U311(X1, X2)) U312(ok(X1), ok(X2)) -> ok(U312(X1, X2)) pair(ok(X1), ok(X2)) -> ok(pair(X1, X2)) U33(ok(X1), ok(X2), ok(X3)) -> ok(U33(X1, X2, X3)) U321(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U321(X1, X2, X3, X4)) U322(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U322(X1, X2, X3, X4)) U323(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U323(X1, X2, X3, X4)) U324(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U324(X1, X2, X3, X4)) U325(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U325(X1, X2, X3, X4)) U326(ok(X1), ok(X2), ok(X3), ok(X4)) -> ok(U326(X1, X2, X3, X4)) U327(ok(X1), ok(X2)) -> ok(U327(X1, X2)) U34(ok(X1), ok(X2)) -> ok(U34(X1, X2)) U331(ok(X1), ok(X2), ok(X3)) -> ok(U331(X1, X2, X3)) U332(ok(X1), ok(X2)) -> ok(U332(X1, X2)) U333(ok(X1), ok(X2)) -> ok(U333(X1, X2)) U334(ok(X1), ok(X2)) -> ok(U334(X1, X2)) U341(ok(X1), ok(X2), ok(X3)) -> ok(U341(X1, X2, X3)) U342(ok(X1), ok(X2), ok(X3)) -> ok(U342(X1, X2, X3)) U343(ok(X1), ok(X2), ok(X3)) -> ok(U343(X1, X2, X3)) U344(ok(X1), ok(X2), ok(X3)) -> ok(U344(X1, X2, X3)) fst(ok(X)) -> ok(fst(X)) U41(ok(X1), ok(X2), ok(X3)) -> ok(U41(X1, X2, X3)) U42(ok(X1), ok(X2), ok(X3)) -> ok(U42(X1, X2, X3)) U43(ok(X1), ok(X2), ok(X3)) -> ok(U43(X1, X2, X3)) U44(ok(X1), ok(X2), ok(X3)) -> ok(U44(X1, X2, X3)) U45(ok(X1), ok(X2)) -> ok(U45(X1, X2)) U46(ok(X)) -> ok(U46(X)) U51(ok(X1), ok(X2), ok(X3)) -> ok(U51(X1, X2, X3)) U52(ok(X1), ok(X2), ok(X3)) -> ok(U52(X1, X2, X3)) U53(ok(X1), ok(X2), ok(X3)) -> ok(U53(X1, X2, X3)) U54(ok(X1), ok(X2), ok(X3)) -> ok(U54(X1, X2, X3)) U55(ok(X1), ok(X2)) -> ok(U55(X1, X2)) U56(ok(X)) -> ok(U56(X)) U61(ok(X1), ok(X2)) -> ok(U61(X1, X2)) U62(ok(X1), ok(X2)) -> ok(U62(X1, X2)) isPLNatKind(ok(X)) -> ok(isPLNatKind(X)) U63(ok(X)) -> ok(U63(X)) isPLNat(ok(X)) -> ok(isPLNat(X)) U71(ok(X1), ok(X2)) -> ok(U71(X1, X2)) U72(ok(X1), ok(X2)) -> ok(U72(X1, X2)) U73(ok(X)) -> ok(U73(X)) U81(ok(X1), ok(X2)) -> ok(U81(X1, X2)) U82(ok(X1), ok(X2)) -> ok(U82(X1, X2)) U83(ok(X)) -> ok(U83(X)) U91(ok(X1), ok(X2)) -> ok(U91(X1, X2)) U92(ok(X1), ok(X2)) -> ok(U92(X1, X2)) U93(ok(X)) -> ok(U93(X)) tail(ok(X)) -> ok(tail(X)) take(ok(X1), ok(X2)) -> ok(take(X1, X2)) sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) Types: active :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U101 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok tt :: tt:mark:nil:0':ok mark :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U102 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNaturalKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U103 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U104 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U105 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isNatural :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U106 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U11 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U12 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U111 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U112 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U13 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U121 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U122 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U14 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U131 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok snd :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok splitAt :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U141 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U151 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U161 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U171 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U172 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U181 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U182 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U183 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U191 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U192 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U193 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U201 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U202 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U203 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U204 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U205 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U206 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U21 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U22 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U211 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U23 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U221 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U24 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U231 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U232 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U241 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U242 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U243 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U244 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U245 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U246 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U251 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U252 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U253 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U254 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U255 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U256 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U261 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U262 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U271 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U272 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U281 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U282 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok cons :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok natsFrom :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok s :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U291 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U292 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U293 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U294 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok head :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok afterNth :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U301 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U302 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U303 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U304 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U31 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U32 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U311 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U312 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok pair :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok nil :: tt:mark:nil:0':ok U33 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U321 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U322 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U323 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U324 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U325 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U326 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U327 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U34 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U331 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U332 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U333 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U334 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U341 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U342 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U343 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U344 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok fst :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U41 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U42 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U43 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U44 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U45 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U46 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U51 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U52 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U53 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U54 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U55 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U56 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U61 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U62 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNatKind :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U63 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok isPLNat :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U71 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U72 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U73 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U81 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U82 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U83 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok U91 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U92 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok U93 :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok tail :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok take :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok 0' :: tt:mark:nil:0':ok sel :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok -> tt:mark:nil:0':ok proper :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok ok :: tt:mark:nil:0':ok -> tt:mark:nil:0':ok top :: tt:mark:nil:0':ok -> top hole_tt:mark:nil:0':ok1_0 :: tt:mark:nil:0':ok hole_top2_0 :: top gen_tt:mark:nil:0':ok3_0 :: Nat -> tt:mark:nil:0':ok Lemmas: U102(gen_tt:mark:nil:0':ok3_0(+(1, n5_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n5_0) U103(gen_tt:mark:nil:0':ok3_0(+(1, n17319_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n17319_0) U104(gen_tt:mark:nil:0':ok3_0(+(1, n35249_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n35249_0) U105(gen_tt:mark:nil:0':ok3_0(+(1, n53770_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n53770_0) U106(gen_tt:mark:nil:0':ok3_0(+(1, n64799_0))) -> *4_0, rt in Omega(n64799_0) U12(gen_tt:mark:nil:0':ok3_0(+(1, n67850_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n67850_0) U112(gen_tt:mark:nil:0':ok3_0(+(1, n87757_0))) -> *4_0, rt in Omega(n87757_0) U13(gen_tt:mark:nil:0':ok3_0(+(1, n91075_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n91075_0) U122(gen_tt:mark:nil:0':ok3_0(+(1, n111906_0))) -> *4_0, rt in Omega(n111906_0) U14(gen_tt:mark:nil:0':ok3_0(+(1, n115524_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n115524_0) snd(gen_tt:mark:nil:0':ok3_0(+(1, n137279_0))) -> *4_0, rt in Omega(n137279_0) splitAt(gen_tt:mark:nil:0':ok3_0(+(1, n141197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n141197_0) U172(gen_tt:mark:nil:0':ok3_0(+(1, n154745_0))) -> *4_0, rt in Omega(n154745_0) U182(gen_tt:mark:nil:0':ok3_0(+(1, n158914_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n158914_0) U183(gen_tt:mark:nil:0':ok3_0(+(1, n172777_0))) -> *4_0, rt in Omega(n172777_0) U192(gen_tt:mark:nil:0':ok3_0(+(1, n177197_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n177197_0) U193(gen_tt:mark:nil:0':ok3_0(+(1, n191574_0))) -> *4_0, rt in Omega(n191574_0) U202(gen_tt:mark:nil:0':ok3_0(+(1, n196245_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n196245_0) U203(gen_tt:mark:nil:0':ok3_0(+(1, n221255_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n221255_0) U204(gen_tt:mark:nil:0':ok3_0(+(1, n246874_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n246874_0) U205(gen_tt:mark:nil:0':ok3_0(+(1, n273102_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n273102_0) U206(gen_tt:mark:nil:0':ok3_0(+(1, n289205_0))) -> *4_0, rt in Omega(n289205_0) U22(gen_tt:mark:nil:0':ok3_0(+(1, n294724_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n294724_0) U23(gen_tt:mark:nil:0':ok3_0(+(1, n322338_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n322338_0) U24(gen_tt:mark:nil:0':ok3_0(+(1, n350561_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n350561_0) U232(gen_tt:mark:nil:0':ok3_0(+(1, n367986_0))) -> *4_0, rt in Omega(n367986_0) U242(gen_tt:mark:nil:0':ok3_0(+(1, n374154_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n374154_0) U243(gen_tt:mark:nil:0':ok3_0(+(1, n403763_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n403763_0) U244(gen_tt:mark:nil:0':ok3_0(+(1, n433981_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n433981_0) U245(gen_tt:mark:nil:0':ok3_0(+(1, n464808_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n464808_0) U246(gen_tt:mark:nil:0':ok3_0(+(1, n483959_0))) -> *4_0, rt in Omega(n483959_0) U252(gen_tt:mark:nil:0':ok3_0(+(1, n490975_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n490975_0) U253(gen_tt:mark:nil:0':ok3_0(+(1, n523188_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n523188_0) U254(gen_tt:mark:nil:0':ok3_0(+(1, n556010_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n556010_0) U255(gen_tt:mark:nil:0':ok3_0(+(1, n589441_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n589441_0) U256(gen_tt:mark:nil:0':ok3_0(+(1, n610318_0))) -> *4_0, rt in Omega(n610318_0) U262(gen_tt:mark:nil:0':ok3_0(+(1, n618182_0))) -> *4_0, rt in Omega(n618182_0) U272(gen_tt:mark:nil:0':ok3_0(+(1, n626147_0))) -> *4_0, rt in Omega(n626147_0) U282(gen_tt:mark:nil:0':ok3_0(+(1, n634213_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n634213_0) cons(gen_tt:mark:nil:0':ok3_0(+(1, n656020_0)), gen_tt:mark:nil:0':ok3_0(b)) -> *4_0, rt in Omega(n656020_0) natsFrom(gen_tt:mark:nil:0':ok3_0(+(1, n678133_0))) -> *4_0, rt in Omega(n678133_0) s(gen_tt:mark:nil:0':ok3_0(+(1, n686600_0))) -> *4_0, rt in Omega(n686600_0) U292(gen_tt:mark:nil:0':ok3_0(+(1, n695168_0)), gen_tt:mark:nil:0':ok3_0(b), gen_tt:mark:nil:0':ok3_0(c)) -> *4_0, rt in Omega(n695168_0) Generator Equations: gen_tt:mark:nil:0':ok3_0(0) <=> tt gen_tt:mark:nil:0':ok3_0(+(x, 1)) <=> mark(gen_tt:mark:nil:0':ok3_0(x)) The following defined symbols remain to be analysed: U293, active, U294, head, afterNth, U302, U303, U304, U32, U312, pair, U33, U322, U323, U324, U325, U326, U327, U34, U332, U333, U334, U342, U343, U344, fst, U42, U43, U44, U45, U46, U52, U53, U54, U55, U56, U62, isPLNatKind, U63, isPLNat, U72, U73, U82, U83, U92, U93, U11, U21, U31, U41, U51, U61, U71, U81, U91, U101, U111, U121, U131, U141, U151, U161, U171, U181, U191, U201, U211, U221, U231, U241, U251, U261, U271, U281, U291, U301, U311, U321, U331, U341, tail, take, sel, proper, top They will be analysed ascendingly in the following order: U293 < active U294 < active head < active afterNth < active U302 < active U303 < active U304 < active U32 < active U312 < active pair < active U33 < active U322 < active U323 < active U324 < active U325 < active U326 < active U327 < active U34 < active U332 < active U333 < active U334 < active U342 < active U343 < active U344 < active fst < active U42 < active U43 < active U44 < active U45 < active U46 < active U52 < active U53 < active U54 < active U55 < active U56 < active U62 < active isPLNatKind < active U63 < active isPLNat < active U72 < active U73 < active U82 < active U83 < active U92 < active U93 < active U11 < active U21 < active U31 < active U41 < active U51 < active U61 < active U71 < active U81 < active U91 < active U101 < active U111 < active U121 < active U131 < active U141 < active U151 < active U161 < active U171 < active U181 < active U191 < active U201 < active U211 < active U221 < active U231 < active U241 < active U251 < active U261 < active U271 < active U281 < active U291 < active U301 < active U311 < active U321 < active U331 < active U341 < active tail < active take < active sel < active active < top U293 < proper U294 < proper head < proper afterNth < proper U302 < proper U303 < proper U304 < proper U32 < proper U312 < proper pair < proper U33 < proper U322 < proper U323 < proper U324 < proper U325 < proper U326 < proper U327 < proper U34 < proper U332 < proper U333 < proper U334 < proper U342 < proper U343 < proper U344 < proper fst < proper U42 < proper U43 < proper U44 < proper U45 < proper U46 < proper U52 < proper U53 < proper U54 < proper U55 < proper U56 < proper U62 < proper isPLNatKind < proper U63 < proper isPLNat < proper U72 < proper U73 < proper U82 < proper U83 < proper U92 < proper U93 < proper U11 < proper U21 < proper U31 < proper U41 < proper U51 < proper U61 < proper U71 < proper U81 < proper U91 < proper U101 < proper U111 < proper U121 < proper U131 < proper U141 < proper U151 < proper U161 < proper U171 < proper U181 < proper U191 < proper U201 < proper U211 < proper U221 < proper U231 < proper U241 < proper U251 < proper U261 < proper U271 < proper U281 < proper U291 < proper U301 < proper U311 < proper U321 < proper U331 < proper U341 < proper tail < proper take < proper sel < proper proper < top